Attribute和Property的區別(例用prop和attr獲取value值異同)

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

  1. 123
  2. 123
  3. 123

可是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

  1. 123
  2. 456
  3. 456

並且點擊按鈕後,input標籤例的value值變成123,可是input框裏的數字是456 -_- 可想而知,想獲取用戶輸入的值,必定不能用attr("value")方法,能夠用val()或者prop("value"),由於用戶只能操做輸入框,而不能操做input標籤input

相關文章
相關標籤/搜索