jQuery中attr和prop的区别(checkbox全选
比来在进行项目开发的时候,发明全选与否的时候呈现了问题,同样的代码,在差别框架中,不能正常运行了,
function selectall() { if ($(‘#checkall‘).is(‘:checked‘)) { $("[name=‘check_kid‘]").attr("checked", ‘true‘); } else { $("[name=‘check_kid‘]").removeAttr("checked"); } }
上述代码在jquery-1.8.2.js中运行正常,而在高版本的jquery/jquery-3.4.1.js 和 jquery/jquery-1.11.3.js 就行欠亨了。(图片太大模糊了,右键—>打开新标签页检察)
得替换为:
function selectall() { $("#checkall").on("change", function () { $(" :checkbox[name=‘check_kid‘]").prop("checked", $(this).prop("checked")); }); }
在高版本的jQuery引入prop要领后,什么时候该用prop?什么时候该用attr?它们之间有什么区别?这些问题就呈现了。
关于它们的区别。
转载于:https://blog.csdn.net/u014291497/article/details/50639628
jQuery中有3个获取元素value值的函数对照相似:attr(), prop(), val();拿来对照一下。
示例代码:
<script src=http://www.mamicode.com/"jquery-2.1.4.js"></script> <body> <input type=http://www.mamicode.com/"text" value=http://www.mamicode.com/"123" /> <button id=http://www.mamicode.com/"btn">click</button> <script> $("#btn").click(function () { var attr = $("input").attr("value"); var prop = $("input").prop("value"); var val = $("input").val(); //为输入框设定了初始值:123,此时点击按钮 console.log(attr); //输出123 console.log(prop); //输出123 console.log(val); //输出123 }) </script> </body>
转变输入框的值,,此时控制台输出:
123 123thgf 123thgf
如果我们没有为文本框设定初始值,即删除value=”123”后,依旧使用如上js代码,则相应输出如下:
undefined attr()输出为undefined,而prop()和val()输出为“空”。
输入value值后:控制台输出为:
undefined asdasd asdasd attr()输出依然为undefined,而prop()和val()则输出实际值。
可见,prop()和val()都能获取到文本框的实际value值,而attr()获取的则始终为文档布局中的value的属性值,与文本框实际值无关,并不会变革。
区别二:固有属性和自界说属性的差异: 转载于:https://blog.csdn.net/xiaouncle/article/details/53959496对付HTML元素自己就带有的固有属性,(以及获取动态属性,即控件的实际值)在措置惩罚惩罚时建议使用prop要领
对付HTML元素我们自界说的DOM属性,在措置惩罚惩罚时建议使用attr要领
上面的描述也许有点模糊,举几个例子就知道了。
<a href="#" target="_self">超链接</a>
这个例子里<a>元素的DOM属性有id、href、target,这些属性是<a>元素自己就有的属性,W3C标准里就包罗这几个属性,或者说在IDE里能够智能提示出的属性,这些就叫做固有属性。措置惩罚惩罚这些属性时,建议使用prop。
<a href="#" target="_self" uuu="guoguo">超链接</a>
这个例子里<a>元素的DOM属性有id、href、target、uuu,前三个是固有属性,最后一个“uuu”属性使我们自界说的,<a>元素自己是没有这个属性的,这种就是自界说的DOM属性。措置惩罚惩罚这些属性时,建议使用attr。
读取HTML元素固有属性(已赋值)
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/31365.html
- 上一篇:HTML 事件属性
- 下一篇:php7使用xhprof测试php性能