jQuery中prop()方法和attr()方法可能遇到的问题小结
<html>
<head>
<title>放置文章标题</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> //这里是网页编码现在是gb2312
<meta name="keywords" content="关键字" />
<meta name="description" content="本页描述或关键字描述" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-alpha1/jquery.min.js" type="text/javascript" charset="utf-8"></script>
<script>
$(function(){
$('#changepass').click(function(){
console.log($('#changepass').attr('checked')); //输出undefined
若将attr() 改为 prop() ,则显示正常,选中则输出true,不选中则输出false
if($('#changepass').attr('checked')){
alert("选中了");
}
else
{
alert("没有选中");
}
})
})
</script>
</head>
<body>
<input id="changepass" type="checkbox">
</body>
</html>
总结:
具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr(),具体见下表: