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