jquery使用心得

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);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值