https://www.web-tinker.com/article/20115.html 感谢这位大牛 上面的连接里讲述的是区别,html
用prop()和attr()获取value值异同 参照http://blog.csdn.net/u014291497/article/details/50639628web
结论:动态获取值用val()或者prop("value"),不要用attr("value");.net
须要注意的是code
<input id="myint" type="text" /> <button id="mybtn">点击</button> $(function(){ $("#mybtn").on("click",function(e){ $("#myint").attr("value","123"); var attr = $("#myint").attr("value"); var prop = $("#myint").prop("value"); var val = $("#myint").val(); console.log(attr); console.log(prop); console.log(val); }); });
结果htm
可是blog
<input id="myint" type="text" /> <button id="mybtn">点击</button> $(function(){ $("#mybtn").on("click",function(e){ $("#myint").attr("value","123"); $("#myint").prop("value","456"); var attr = $("#myint").attr("value"); var prop = $("#myint").prop("value"); var val = $("#myint").val(); console.log(attr); console.log(prop); console.log(val); }); });
结果get
并且点击按钮后,input标签例的value值变成123,可是input框里的数字是456 -_- 可想而知,想获取用户输入的值,必定不能用attr("value")方法,能够用val()或者prop("value"),由于用户只能操做输入框,而不能操做input标签input