1 . 在controller层中的@ResponseBody注解中返回的要是一个对象而不能用字符串。

2 . 给html页面的按钮添加单击事件

	$(#login).click(
function login(){
//todo...
});

3 . jquery获取标签的值(通过id获取)

	$("#name").val();

4 . 使用JS来跳转页面:

	window.location.href = "edit.html";

也可以跳转到一个action:

	window.location.href = "login.do";

5 . 给如 li 标签绑定值

	<li class="online">
<a class='checked'>
<i class="fa fa-book" title="online" rel="tooltip-bottom"/>默认笔记本
</a>
</li> 代码如下: //构建如上标签:
var sli = "";
sli += '<li class="online"> ';
sli += '<a>';
sli += '<i class="fa fa-book" title="online" rel="tooltip-bottom">';
sli += '</i>' + bookName + '</a></li>';
//将bookId绑定到li元素上
var $li = $(sli);
$li.data("bookId", bookId);
//将li元素添加到ul列表中
$("#book_ul").append($li);

6 . 取出 li 标签的绑定值(父标签ul的id为book_ul)。

	var $li = $("#book_ul a.checked").parent();
var bookId = $li.data("bookId");//笔记id

7 . jQuery进行表单验证。

    $(function () {
$("#registerForm").validate({
rules: {
username: {
required: true,
rangelength: [4, 16],
remote: {
url: "checkUserName.do",
type: "post"
}
},
password: {
required: true,
rangelength: [4, 20]
},
confirmPwd: {
required: true,
equalTo: "#password"
}
},
messages: {
username: {
required: "请填写用户名!",
rangelength: "用户名长度必须在{0}-{1}之间!",
remote: "该用户名已经存在!"
},
password: {
required: "请填写密码!",
rangelength: "密码长度必须在{0}-{1}之间!"
},
confirmPwd: {
required: "请再次确认密码",
equalTo: "两次密码不一致"
}
},
submitHandler: function (form) {
$("#registerForm").ajaxSubmit({
dataType: "json",
success: function (data) {
if (data.success) {
$.messager.confirm("提示", "注册成功", function () {
window.location.href = "/personal.do";
})
} else {
$.messager.popup("注册失败!")
}
}
});
},
errorClass: "text-danger",
highlight: function (element) {
$(element).closest("div.form-group").addClass("has-error");
},
unhighlight: function (element) {
$(element).closest("div.form-group").removeClass("has-error");
}
})
})

checkUserName.do中,后台通过返回true或者false来判断是否验证成功,如果不成功就显示message的remote值。

jQuery提交表单的时候,通过调用#registerForm.ajaxSubmit来验证是否成功,在后来弹出的提示框的时候,第三个方法为给确认按钮添加方法,可以进行跳转操作。

8 .

  • freemaker

配置

<!--配置freeMarker的模板路径 -->
<bean
class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<!-- 配置freemarker的文件编码 -->
<property name="defaultEncoding" value="UTF-8"/>
<!-- 配置freemarker寻找模板的路径 -->
<property name="templateLoaderPath" value="/WEB-INF/views/"/> <property name="freemarkerSettings">
<value>
number_format = 0.##
datetime_format = yyyy-MM-dd HH:mm:ss
</value>
</property>
</bean> <!--freemarker视图解析器 -->
<bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<!-- 是否在model自动把session中的attribute导入进去,可以直接在前端使用session -->
<property name="exposeSessionAttributes" value="true"/>
<!-- 配置逻辑视图自动添加的后缀名 -->
<property name="suffix" value=".ftl"/>
<!-- 配置视图的输出HTML的contentType -->
<property name="contentType" value="text/html;charset=UTF-8"/>
</bean>
  • 使用

    • <#if logininfo??>表示logininfo这个对象存在:

        <#if logininfo??>
      //显示logininfo存在时候的信息...
      <#else>
      //显示不存在時候的信息...
      <#if/>
    • <#assign currentNav="account"/> 表示创建一个currentNav对象并赋值

前端js总结的更多相关文章

  1. 前端Js框架汇总

    概述: 有些日子没有正襟危坐写博客了,互联网飞速发展的时代,技术更新迭代的速度也在加快.看着Java.Js.Swift在各领域心花路放,也是煞是羡慕.寻了寻.net的消息,也是振奋人心,.net co ...

  2. 闲聊——浅谈前端js模块化演变

    function时代 前端这几年发展太快了,我学习的速度都跟不上演变的速度了(门派太多了,后台都是大牛公司支撑类似于facebook的react.google的angular,angular的1.0还 ...

  3. json处理总结(前端js和后端java)

    前端(js): json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键,下面将介绍两者之间的相互转换. json字符串:var st ...

  4. 前端js文件合并三种方式

    最近在思考前端js文件该如何合并,当然不包括不能合并文件,而是我们能合并的文件,想了想应该也只有三种方式. 三个方式如下: 1. 一个大文件,所有js合并成一个大文件,所有页面都引用它. 2. 各个页 ...

  5. 2015 前端[JS]工程师必知必会

    2015 前端[JS]工程师必知必会 本文摘自:http://zhuanlan.zhihu.com/FrontendMagazine/20002850 ,因为好东东西暂时没看懂,所以暂时保留下来,供以 ...

  6. RSA加密前端JS加密,后端asp.net解密,报异常

    RSA加密前端JS加密,后端asp.net解密,报异常 参考引用:http://www.ohdave.com/rsa/的JS加密库 前端JS加密代码: function GetChangeStr() ...

  7. 前端js的书写规范和高效维护的方案_自我总结使用的方案

    作为程序员,人生最值得幸福的事有几件: 解决困扰了很长时间的问题 升职加薪 找个漂亮又靠谱的对象 深得领导的喜欢 带领团队冲锋陷阵 ... 哈哈,这些都是梦想,暂时想想就好了.这肯定和我说的东西不符合 ...

  8. 前端js,css文件合并三种方式,bat命令

    前端js,css文件合并三种方式,bat命令 前端js文件该如何合并三个方式如下:1. 一个大文件,所有js合并成一个大文件,所有页面都引用它.2. 各个页面大文件,各自页面合并生成自己所需js的大文 ...

  9. 前端js上传文件 到后端接收文件

    下面是前端js代码: <html> <head> <meta http-equiv="Content-Type" content="text ...

  10. Gridview 行变色和行按钮调用前端js

    1.鼠标移动某一行 ,变色 protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Ro ...

随机推荐

  1. Eclipse maven hadoop -- java.io.IOException: No FileSystem for scheme: hdfs

    2019-01-10 概述 今天在Windows系统下新安装了Eclipse和maven的环境,想利用Maven构建一个Hadoop程序的,结果却发现程序运行时一直报 “No FileSystem f ...

  2. 【LOJ565】【LibreOJ Round #10】mathematican 的二进制 DP 分治FFT

    题目大意 有一个无限长的二进制串,初始时它的每一位都为 \(0\).现在有 \(m\) 个操作,其中第 \(i\) 个操作是将这个二进制串的数值加上 \(2^{a_i}\).我们称每次操作的代价是这次 ...

  3. Vue 闪现解决

    场景介绍:页面加载数据时,原始代码{{}}闪现. 问题代码 <div class="root"> <ul v-for="user in userProf ...

  4. mysql 设置允许重试,批量更新

    jdbc:mysql://ip:port/base?allowMultiQueries=true&autoReconnect=true 在mybatis中批量更新 需要在mysql的url上设 ...

  5. vmware(1):vmware中的bridge、nat、host-only的区别

    VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式) bridged(桥接模式) 在这种模式下,VMWare虚拟出来的操作系统就 ...

  6. ZOJ Monthly, January 2018

    A 易知最优的方法是一次只拿一颗,石头数谁多谁赢,一样多后手赢 #include <map> #include <set> #include <ctime> #in ...

  7. Centos 7最小化redis部署

    配置源 [GuGe] name=GuGe baseurl=ftp://192.168.1.82 gpgcheck= enable= 安装 sh-4.2# yum -y install gcc gcc- ...

  8. Ubuntu16下Hive 安装

    0.安装环境和版本 Ubuntu16,hadoop版本是2.7.2 ,选择Hive版本为  hive-2.1.17 1. Hive安装包下载 地址: https://mirrors.tuna.tsin ...

  9. spring Bean的完整生命周期

    spring 容器中的bean的完整生命周期一共分为十一步完成. 1.bean对象的实例化 2.封装属性,也就是设置properties中的属性值 3.如果bean实现了BeanNameAware,则 ...

  10. JSP标签和JSTL

    Java的5个标签库:核心(c).格式化(fmt).函数(fn).SQL(sql).XML(x) SQL.XML库不推荐使用 核心标签库(c) //taglib指令 <%@ taglib pre ...