Attribute和Property的区别(例用prop和attr获取value值异同)

本文探讨了在jQuery中使用val(), prop()和attr()来获取和设置HTML元素属性的方法,并通过实例对比了这三种方法在不同场景下的表现。特别强调了在动态获取用户输入值时,推荐使用val()或prop('value')而非attr('value')。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

https://www.web-tinker.com/article/20115.html 感谢这位大牛 上面的链接里讲述的是区别,

用prop()和attr()获取value值异同 参照http://blog.youkuaiyun.com/u014291497/article/details/50639628

结论:动态获取值用val()或者prop("value"),不要用attr("value");

需要注意的是

<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);
	});
});

结果

  1. 123
  2. 123
  3. 123

但是

<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);
	});
});

结果

  1. 123
  2. 456
  3. 456

而且点击按钮后,input标签例的value值变成123,但是input框里的数字是456 -_- 可想而知,想获取用户输入的值,一定不能用attr("value")方法,可以用val()或者prop("value"),因为用户只能操作输入框,而不能操作input标签

转载于:https://my.oschina.net/daladida/blog/784169

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值