用于返回一组匹配元素中第一个元素的属性值。
用于设置一组匹配元素的属性值。
$(selector).prop(property)
$(selector).prop(property,value)
$(selector).prop(property,function(index,currentvalue))
$(selector).prop({property:value, property:value,...})
参数 | 说明 |
property | 它指定属性的名称。 |
value | 它定义属性的值。 |
function(index,currentvalue) | 它指定一个函数,该函数返回要设置的属性的值。 index:它提供元素在集合中的索引位置。 currentvalue:它提供所选元素的当前属性值。 |
<!DOCTYPE html>
<html>
<head>
<script src="/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
var $x = $("div");
$x.prop("color","#e0eeee");
$x.append("The value of the color property: " + $x.prop("color"));
$x.removeProp("color");
$x.append("<br>Now the value of the color property: " + $x.prop("color"));
});
});
</script>
</head>
<body>
<button>Add and remove a property</button><br><br>
<div></div>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>prop demo</title>
<style>
p {
margin: 20px 0 0;
}
b {
color: red;
}
</style>
<script src="/jquery-1.10.2.js"></script>
</head>
<body>
<input id="check1" type="checkbox" checked="checked">
<label for="check1">Check me</label>
<p></p>
<script>
$("input").change(function() {
var $input = $( this );
$("p").html(
".attr( \"checked\"): <b>" + $input.attr( "checked") + "</b><br>" +
".prop( \"checked\"): <b>" + $input.prop( "checked") + "</b><br>" +
".is( \":checked\"): <b>" + $input.is( ":checked") ) + "</b>";
}).change();
</script>
</body>
</html>
jQuery attr()方法用于检索HTML属性值,而jQuery prop()方法用于检索属性值。
根据DOM树,attr()方法更改HTML标签的属性,而prop()方法更改HTML标签的属性。
属性通常比属性更易于处理,因此大多数使用jQuery prop()方法而不是attr()方法。