# 同一种类型的事件注册多个事件句柄,后面的不会覆盖前面的事件
# event.which == 13,13代表回车
# parsley.js验证框架
# JSON.stringify, avoid TypeError: Converting circular structure to JSON
# 针对会话缓存,sessionStorage.getItem("zTree_selectNodeId")==undefined这个判断是true
而单独输出,得到的是null
跟null相比肯定得到的是true
#当浏览器前进/后退时,表单里面的值会被清空,但是有的时候又不会被清空
# JQuery-validate校验框架里面,这个名字不能是strMap[roleUuid],这种类型的,带有中括号的,他会将他自动忽视
# select2的多选传递数据是以下形式的,但是在后台会变成字符串,以逗号分隔
# 关于load()函数的用法,
load(null),会抛出一个异常
load(""),前台会死循环
load("url"),错误路径,会抛出404错误
# 校验框架
添加规则 $("#sjhztype").rules("add",{required:true,min:0,messages:{ min:"请选择合作类型"}});
删除规则 $("#province").rules("remove");
注意如果你用的是类样式,需要用以下写法,否则只会生效第一个
$(".froleUuid").each(function(){
$(this).rules("add",{required:true, messages:{required:"测评角色为必填项"}});
});
# 在JS中undefined和null是同等的
# 转义字符用\',别用\"
# js的split和java的不一样啊,a</br>可以解析出两个字符串
#
var weight=$("input[name='strMap[weightPercentage]'][fid='"+value+"']").val();
下面这种写法也可以
$("#weightPercentage-error[fid='"+value+"']").html(errorElement).show();
# 超链接传入当前对象本身this,不能用href,要用onclick
参考博客:http://www.jquerycn.cn/a_12845
# jquery on()
正确写法:
$(document).on("click","#saveButton_standard",function(){
formSubmit(root+"/hzjh/mzcp/MzcpStandard/addStandard", "#standardForm");
});
或者
$(document).ready(function(){
$("p").on("click",function(){
alert("段落被点击了。");
});
});
错误写法:
$("p").on("click",function(){ alert("段落被点击了。"); });
# JS 数字相加出现多个小数的问题
1.这是因为Javascript的数字类型是以64位的IEEE 754格式存储的。
sum.toFixed(2) 保留两位小数即可
# 用户输入的换行符在使用alert、console输出时看到的时换行效果,但是放在html网页中就不行了,所以我们需要将换行符转化为<br/>;
f12下面的换行符
JSON字符串
在文本域中也还是原效果,能换行
# layer的open方法设置宽高时一定得加上px单位
/* 全局的ajax访问,处理ajax清求时加上accessToken(可以拦截到所有的请求,包括href、资源请求、ajax请求) */
$.ajaxSetup({
beforeSend: function(request) {
if(arguments[1].type=="POST"){
var accessToken= sessionStorage.getItem("accessToken");
if(accessToken!=null){
request.setRequestHeader("accessToken",accessToken);
}
console.log(arguments);
}
});
/* 全局的ajax访问,处理ajax清求时加上accessToken(可以拦截到所有的请求,包括href、资源请求、ajax请求) */
$.ajaxSetup({
beforeSend: function(request) {
if(arguments[1].type=="POST"){
var data = '';
var accessToken= sessionStorage.getItem("accessToken");
if(accessToken!=null){
if(arguments[1].data==null || arguments[1].data==''){
data = data.concat('accessToken=' + accessToken);
}else{
data = data.concat('&accessToken=' + accessToken);
}
arguments[1].data += data;//将序列化后的参数重写
}
}else if(arguments[1].type=="GET"){
var data = '';
var accessToken= sessionStorage.getItem("accessToken");
if(accessToken!=null){
if(arguments[1].url.indexOf("?")!=-1){
data = data.concat('&accessToken=' + accessToken);
}else{
data = data.concat('?accessToken=' + accessToken);
}
arguments[1].url += data;//将序列化后的参数重写
}
}
}
});
# a标签的href和onclick属性同时存在点击事件先触发
- 同时存在两个定义的时候(onclick与href都定义了),如果想阻止href的动作,在onclick必须加上return false; 一般是这样写onclick="xxx();return false;".
href一般是指向一个URL地址,也可以调用javascript ,如href="javascript:xxx();",文档中推荐这样写:<a href=" javascript:void(0)" onclick="xxx();">xx</a>,但是这种方法在复杂环境有时会产生奇怪的问题,尽量不要用javascript:协议做为A的href属性,这样不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放。
javascript:void(0) 中最关键的是 void 关键字, void 是 JavaScript 中非常重要的关键字,该操作符指定要计算一个表达式但是不返回值。
javascript:;也可以