jquery中prop方法和attr方法的区别浅析
2016-08-20 · 知道合伙人互联网行家
护肤达人IT宅族
知道合伙人互联网行家
向TA提问 私信TA
知道合伙人互联网行家
采纳数:5637
获赞数:17441
毕业于曲阜师范大学,学士学位。互联网行业2年从业经验,读过SEO相关书籍。现任爱家网SEO优化专员。
向TA提问 私信TA
关注
展开全部
1、赋值时候,如果是<input type="checkbox" checked>这样的只有属性名就能生效的属性
推荐prop,即:$('input').prop('checked',true);
同时,false表示取消,即:$('input').prop('checked',false);
当然attr也行的:$('input').attr('checked','这里写什么都行的');
取消属性就是移除:$('input').removeAttr('checked');
2、取值的时候,如果是<input id="input1" type="checkbox" checked><input id="input2" type="checkbox">
推荐使用prop,即:
$('#input1').prop('checked'); //返回true
$('#input2').prop('checked'); //返回false
而使用attr,则:
$('#input1').attr('checked'); //返回checked
$('#input2').attr('checked'); //返回undefined
3、特殊属性赋值取值
这个特殊说明下,获取很多人都用不到呢。
比如需要在input中追加一个data-tips属性。变成这样子 <input type="text" value="" data-tips="aa">
这时候只能写:$('input').attr('data-tips','aa');
使用prop是不管用的。
但是读值时候,两个都可以的:
$('input').attr('data-tips');//返回aa
$('input').prop('data-tips');//返回aa
推荐prop,即:$('input').prop('checked',true);
同时,false表示取消,即:$('input').prop('checked',false);
当然attr也行的:$('input').attr('checked','这里写什么都行的');
取消属性就是移除:$('input').removeAttr('checked');
2、取值的时候,如果是<input id="input1" type="checkbox" checked><input id="input2" type="checkbox">
推荐使用prop,即:
$('#input1').prop('checked'); //返回true
$('#input2').prop('checked'); //返回false
而使用attr,则:
$('#input1').attr('checked'); //返回checked
$('#input2').attr('checked'); //返回undefined
3、特殊属性赋值取值
这个特殊说明下,获取很多人都用不到呢。
比如需要在input中追加一个data-tips属性。变成这样子 <input type="text" value="" data-tips="aa">
这时候只能写:$('input').attr('data-tips','aa');
使用prop是不管用的。
但是读值时候,两个都可以的:
$('input').attr('data-tips');//返回aa
$('input').prop('data-tips');//返回aa
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询