前端js总结
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总结的更多相关文章
- 前端Js框架汇总
概述: 有些日子没有正襟危坐写博客了,互联网飞速发展的时代,技术更新迭代的速度也在加快.看着Java.Js.Swift在各领域心花路放,也是煞是羡慕.寻了寻.net的消息,也是振奋人心,.net co ...
- 闲聊——浅谈前端js模块化演变
function时代 前端这几年发展太快了,我学习的速度都跟不上演变的速度了(门派太多了,后台都是大牛公司支撑类似于facebook的react.google的angular,angular的1.0还 ...
- json处理总结(前端js和后端java)
前端(js): json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键,下面将介绍两者之间的相互转换. json字符串:var st ...
- 前端js文件合并三种方式
最近在思考前端js文件该如何合并,当然不包括不能合并文件,而是我们能合并的文件,想了想应该也只有三种方式. 三个方式如下: 1. 一个大文件,所有js合并成一个大文件,所有页面都引用它. 2. 各个页 ...
- 2015 前端[JS]工程师必知必会
2015 前端[JS]工程师必知必会 本文摘自:http://zhuanlan.zhihu.com/FrontendMagazine/20002850 ,因为好东东西暂时没看懂,所以暂时保留下来,供以 ...
- RSA加密前端JS加密,后端asp.net解密,报异常
RSA加密前端JS加密,后端asp.net解密,报异常 参考引用:http://www.ohdave.com/rsa/的JS加密库 前端JS加密代码: function GetChangeStr() ...
- 前端js的书写规范和高效维护的方案_自我总结使用的方案
作为程序员,人生最值得幸福的事有几件: 解决困扰了很长时间的问题 升职加薪 找个漂亮又靠谱的对象 深得领导的喜欢 带领团队冲锋陷阵 ... 哈哈,这些都是梦想,暂时想想就好了.这肯定和我说的东西不符合 ...
- 前端js,css文件合并三种方式,bat命令
前端js,css文件合并三种方式,bat命令 前端js文件该如何合并三个方式如下:1. 一个大文件,所有js合并成一个大文件,所有页面都引用它.2. 各个页面大文件,各自页面合并生成自己所需js的大文 ...
- 前端js上传文件 到后端接收文件
下面是前端js代码: <html> <head> <meta http-equiv="Content-Type" content="text ...
- Gridview 行变色和行按钮调用前端js
1.鼠标移动某一行 ,变色 protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Ro ...
随机推荐
- 切割日志(mysql,nginx,php tomcat)使用logrotate
1.简介 logrotate 程序是一个日志文件管理工具.用来把旧的日志文件删除,并创建新的日志文件,我们把这个过程叫做“转储”.我们可以根据日志文件的大小,也可以根据其天数来转储,这个过程一般通过 ...
- 【AGC015E】Mr.Aoki Incubator DP
题目描述 数轴上有\(n\)个人,每个人的位置是\(x_i\),速度是\(v_i\). 最开始有一些人感染了传染病. 如果某一时刻一个正常人和一个被感染的人处于同一位置,那么这个正常人也会被感染. 问 ...
- 「HGOI#2019.4.19省选模拟赛」赛后总结
t1-Painting 这道题目比较简单,但是我比较弱就只是写了一个链表合并和区间DP. 别人的贪心吊打我的DP,嘤嘤嘤. #include <bits/stdc++.h> #define ...
- [SDOI2011]消耗战(虚树)
洛古题面 题意:给定一棵树,割断每一条边都有代价,每次询问会给定一些点,求用最少的代价使所有给定点都和1号节点不连通 暴力\(DP\) 我们先考虑暴力怎么做 设\(dp[u]\)为以\(u\)为根的子 ...
- input输入框自动获取焦点
只要在该input标签后添加autofocus="autofocus"即可 代码实例: <html> <head></head> <bod ...
- halcon预处理函数
颜色空间变换 trans_from_rgb(ImageRed, ImageGreen, ImageBlue :ImageResult1, ImageResult2, ImageResult3 : Co ...
- ComboBox下拉列表框
属性:DropDownStyle(下拉.可编辑等).Items(条目) 事件:SelectedIndexChanged选择项改变触发 Items内容:总经理.副总经理.财务部 DropDownStyl ...
- utf8的大小写敏感性测试及其修改方法
utf8的大小写敏感性测试及其修改方法 # 测试utf8的大小写敏感性及其修改方法 -- 以下是utf8不区分大小写 # 修改数据库: ALTER DATABASE database_name CHA ...
- python Django cookie和session
在一个会话的多个请求中共享数据,这就是会话跟踪技术.例如在一个会话中的请求如下: 请求银行主页: 请求登录(请求参数是用户名和密码): 请求转账(请求参数与转账相关的数据): 请求信誉卡还款(请求参 ...
- React 记录(4)
React文档:https://www.reactjscn.com/docs/components-and-props.html 慢慢学习:对照教程文档,逐句猜解,截图 React官网:https:/ ...