jQuery函数attr和prop的区别

tech2023-09-19  115

相比baiattr,prop是1.6.1才新出来的,两者从中文意思理解,都是获du取/设置属性的zhi方法(attributes和properties)。只是,window或daodocument中使用.attr()方法在jQuery1.6之前不能正常运行,因为window和document中不能有attributes。prop应运而生了。

attr: 描述: 获取匹配的元素集合中的第一个元素的属性的值。 attr( attributeName ) attributeName 类型: String 要获取的属性名称 .attr()方法只获取第一个匹配元素的属性值。

prop: 描述: 获取匹配的元素集中第一个元素的属性(property)值 prop( propertyName ) propertyName 类型: String 要得到的属性的名称 .prop()方法只获得第一个匹配元素的属性值 。如果元素上没有该属性,或者如果没有匹配的元素。那么该方法会返回undefined值。

下面举个例子:可以用attr替换prop查看效果

<script> $(function () { //全选 $("#CheckedAll").click(function () { if (this.checked) {//如果当前点击的多选框被选中 $('input[type=checkbox][name=items]').prop("checked", true); } else { $('input[type=checkbox][name=items]').prop("checked", false); } }); //输出值 $("#send").click(function () { var str = "你选中的是:\r\n"; $('input[type=checkbox][name=items]:checked').each(function () { str += $(this).val() + "\r\n"; }) alert(str); }); }) </script> <form> 你爱好的运动是?<input type="checkbox" id="CheckedAll" />全选/全不选<br /> <input type="checkbox" name="items" value="足球" />足球 <input type="checkbox" name="items" value="篮球" />篮球 <input type="checkbox" name="items" value="羽毛球" />羽毛球 <input type="checkbox" name="items" value="乒乓球" />乒乓球<br /> <input type="button" id="send" value="提 交" /> </form>
最新回复(0)