1,普通获取某个控件 ${'#id'} 赋值 ${'#id'}.val('new value') 或 ${'#id'}.attr('val','new value')
id = “pojo.name”用jQuery取值。如果直接用$("#pojo.name").val()取不到值。正确的取法为:$("[id='pojo.name']").val();
2, $('.class') 获取样式为class的元素 $('.class')
$('[id="pojo.name"] label:eq(0)').text()==$('[id="pojo.name"]').find('label:eq(0)').text()
获取id是pojo.name下 第一个label的子元素
3, $(':input') 获取input的元素
4,可以组合, $('.class :input') 获取样式class 下所有 <input> 的元素
$('#'+divId+' :checkbox').val("");所所有 type="checkbox" 的 <input> 元素
$('#'+divId+' :radio').val("");所有 type="radio" 的 <input> 元素
$('#'+divId+' :text').val("");所有 type="text" 的 <input> 元素
$('#'+divId+' select').val("");
$('#'+divId+' textarea').val("");
组合规则 标签名 元素属性
$("input[name*='RcptChkInd']") 包含RcptChkInd
5,判断是否隐藏 $('#id').is(':hidden') $.isArray(keys)
6,异步请求
$.ajax({
type: "POST",
async: false,//false 表示同步
data:{id:id,no:no}
url:url,
dataType:"json",
beforeSend:function(XHR){
},
success: function(result) {
},
complete:function(XHR, TS){
},
error:function(){
});
7,循环
$.each(data,function(i){
$('#'+id).append($("<option></option>").val(data.key).html(data.value));
});
$.each(params, function(key, val) {
alert(key+"="+params[key]);
});
$(selector).each(function(index,element){
});
有些朋友可能会以为在jquery跳出循环可以直接使用continue和break了,但是使用之后没有效果,因为在jquery中没有这两条命令。
后来上网查了下,得到了结果:
return false;——跳出所有循环;相当于 javascript 中的 break 效果。
return true;——跳出当前循环,进入下一个循环;相当于 javascript 中的 continue 效果
8,load方法
$.(function(){});
9,页面序列化
var params=$('#addFormCollateral').serializeJSON();//需要自己实现
alert(JSON.stringify(params)); alert json format
json字符串转json对象:jQuery.parseJSON(jsonStr);
json对象转json字符串: JSON.stringify(jsonObj);
var obj={a:1,b:2,c:3};var k = $.param(obj);// 输出 a=1&b=2&c=3与$('#addFormCollateral').serialize()一样
1.jquery选择器选择表单中所有input(type为text和radio)
2.serialize()将其序列化
var msg = $("#innerbox input[type=text],#innerbox input[type=radio]“).serialize();
表单序列化成json对象,使用方式 var params=$('#addFormCollateral').serializeJson();
$.fn.serializeJson=function(){
var serializeObj={};
var array=this.serializeArray();
var str=this.serialize();
$(array).each(function(){
if(serializeObj[this.name]){
if($.isArray(serializeObj[this.name])){
serializeObj[this.name].push(this.value);
}else{
serializeObj[this.name]=[serializeObj[this.name],this.value];
}
}else{
serializeObj[this.name]=this.value;
}
});
return serializeObj;
};
10,
$("button").click({id:'abc'},function(evt){
$("p").append(evt.data.id);
});
11.当前页面路径
location.pathname//相对路径
document.URL//完整路径
document.location//完整路径
12 定时任务,毫秒
setTimeout(function() {
$("#guanzhu").fadeOut("fast");
}, 3000);
13. $('#id').attr('disabled',true);
$('#id').removeAttr('disabled');
$('#J-openshop').addClass('l_gray');
$('#J-openshop').removeClass('l_gray');
14.去空
$.trim()
15javascript中的 空串,false,和0
包含了一个运算的规则:相等运算符判断时,其中一个是true,先转换成1(false则转换为0)再做比较。 "" == false,现将false转化为0,
即:判断"" == 0。空串转换成数字0,0==0,所以 alert("" == false)显示的是true。
16 属性值是逐渐改变的
$("#box").animate({height:"300px"},"slow");
$(selector).animate(styles,speed,easing,callback)
17 规定元素从可见到隐藏的速度
$("p").fadeOut("normal");
$(selector).fadeOut(speed,callback)
18 规定元素从隐藏到可见的速度
$("p").fadeIn("fast");
$(selector).fadeIn(speed,callback)
19 方法对队列中的下一项的执行设置延迟。
$("#div1").delay(1500);
$(selector).delay(speed,queueName);
20jquery 判断元素是否存在
$(id).length>0?存在:不存在
21$.extend方法可以扩展JSON对象,用一个或多个其他对象来扩展一个对象,返回被扩展的对象。
例一
合并 settings 和 options,修改并返回 settings
var settings = { validate: false, limit: 5, name: "foo" };
var options = { validate: true, name: "bar" };
jQuery.extend(settings, options);
结果 settings == { validate: true, limit: 5, name: "bar" }
例二
合并 defaults 和 options, 不修改 defaults。
var empty = {};
var defaults = { validate: false, limit: 5, name: "foo" };
var options = { validate: true, name: "bar" };
var settings = jQuery.extend(empty, defaults, options);
id = “pojo.name”用jQuery取值。如果直接用$("#pojo.name").val()取不到值。正确的取法为:$("[id='pojo.name']").val();
2, $('.class') 获取样式为class的元素 $('.class')
$('[id="pojo.name"] label:eq(0)').text()==$('[id="pojo.name"]').find('label:eq(0)').text()
获取id是pojo.name下 第一个label的子元素
3, $(':input') 获取input的元素
4,可以组合, $('.class :input') 获取样式class 下所有 <input> 的元素
$('#'+divId+' :checkbox').val("");所所有 type="checkbox" 的 <input> 元素
$('#'+divId+' :radio').val("");所有 type="radio" 的 <input> 元素
$('#'+divId+' :text').val("");所有 type="text" 的 <input> 元素
$('#'+divId+' select').val("");
$('#'+divId+' textarea').val("");
组合规则 标签名 元素属性
$("input[name*='RcptChkInd']") 包含RcptChkInd
5,判断是否隐藏 $('#id').is(':hidden') $.isArray(keys)
6,异步请求
$.ajax({
type: "POST",
async: false,//false 表示同步
data:{id:id,no:no}
url:url,
dataType:"json",
beforeSend:function(XHR){
},
success: function(result) {
},
complete:function(XHR, TS){
},
error:function(){
});
7,循环
$.each(data,function(i){
$('#'+id).append($("<option></option>").val(data.key).html(data.value));
});
$.each(params, function(key, val) {
alert(key+"="+params[key]);
});
$(selector).each(function(index,element){
});
有些朋友可能会以为在jquery跳出循环可以直接使用continue和break了,但是使用之后没有效果,因为在jquery中没有这两条命令。
后来上网查了下,得到了结果:
return false;——跳出所有循环;相当于 javascript 中的 break 效果。
return true;——跳出当前循环,进入下一个循环;相当于 javascript 中的 continue 效果
8,load方法
$.(function(){});
9,页面序列化
var params=$('#addFormCollateral').serializeJSON();//需要自己实现
alert(JSON.stringify(params)); alert json format
json字符串转json对象:jQuery.parseJSON(jsonStr);
json对象转json字符串: JSON.stringify(jsonObj);
var obj={a:1,b:2,c:3};var k = $.param(obj);// 输出 a=1&b=2&c=3与$('#addFormCollateral').serialize()一样
1.jquery选择器选择表单中所有input(type为text和radio)
2.serialize()将其序列化
var msg = $("#innerbox input[type=text],#innerbox input[type=radio]“).serialize();
表单序列化成json对象,使用方式 var params=$('#addFormCollateral').serializeJson();
$.fn.serializeJson=function(){
var serializeObj={};
var array=this.serializeArray();
var str=this.serialize();
$(array).each(function(){
if(serializeObj[this.name]){
if($.isArray(serializeObj[this.name])){
serializeObj[this.name].push(this.value);
}else{
serializeObj[this.name]=[serializeObj[this.name],this.value];
}
}else{
serializeObj[this.name]=this.value;
}
});
return serializeObj;
};
10,
$("button").click({id:'abc'},function(evt){
$("p").append(evt.data.id);
});
11.当前页面路径
location.pathname//相对路径
document.URL//完整路径
document.location//完整路径
12 定时任务,毫秒
setTimeout(function() {
$("#guanzhu").fadeOut("fast");
}, 3000);
13. $('#id').attr('disabled',true);
$('#id').removeAttr('disabled');
$('#J-openshop').addClass('l_gray');
$('#J-openshop').removeClass('l_gray');
14.去空
$.trim()
15javascript中的 空串,false,和0
包含了一个运算的规则:相等运算符判断时,其中一个是true,先转换成1(false则转换为0)再做比较。 "" == false,现将false转化为0,
即:判断"" == 0。空串转换成数字0,0==0,所以 alert("" == false)显示的是true。
16 属性值是逐渐改变的
$("#box").animate({height:"300px"},"slow");
$(selector).animate(styles,speed,easing,callback)
17 规定元素从可见到隐藏的速度
$("p").fadeOut("normal");
$(selector).fadeOut(speed,callback)
18 规定元素从隐藏到可见的速度
$("p").fadeIn("fast");
$(selector).fadeIn(speed,callback)
19 方法对队列中的下一项的执行设置延迟。
$("#div1").delay(1500);
$(selector).delay(speed,queueName);
20jquery 判断元素是否存在
$(id).length>0?存在:不存在
21$.extend方法可以扩展JSON对象,用一个或多个其他对象来扩展一个对象,返回被扩展的对象。
例一
合并 settings 和 options,修改并返回 settings
var settings = { validate: false, limit: 5, name: "foo" };
var options = { validate: true, name: "bar" };
jQuery.extend(settings, options);
结果 settings == { validate: true, limit: 5, name: "bar" }
例二
合并 defaults 和 options, 不修改 defaults。
var empty = {};
var defaults = { validate: false, limit: 5, name: "foo" };
var options = { validate: true, name: "bar" };
var settings = jQuery.extend(empty, defaults, options);