prop和attr的区别
对于HTML元素本身就带有的固有属性,在处理时,使用prop方法
对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法
attr
1.attr可以写两个参数,参数1:属性;参数2:属性值
<button>点击</button>
<a href="" action="www">点我</a>
$(function(){
$("button").click(function(){
$("a").attr("gets","www.com");
})
})
给a标签添加一个属性gets
2.只写一个参数时,是指获取该元素的属性值
<button>点击</button>
<a href="" action="www">点我</a>
$("button").click(function(){
$("a").attr("action");
})
获取a的action属性
attr添加或获取的属性一般是自定义的
prop
prop获取的是固有属性,像checkbox,radio和select这样的元素,选中属性对应“checked”和“selected”,属于固有属性,因此需要使用prop方法去操作才能获得正确的结果。
<button id="all">prop按钮</button>
<button id="not">attr按钮</button>
<input type="checkbox">是
<input type="checkbox">否
$(function(){
$("#all").click(function(){
var i=$("input:checkbox").prop("checked");
console.log(i) //选中 true 未选中 false
});
$("#not").click(function(){
var w=$("input:checkbox").attr("checked");
console.log(w) //无论是否选中,输出undefined
})
})