注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Computer Science

I Pressed My Words Here. Will You Read ?

 
 
 

日志

 
 

关于jQuery attr 和 prop 在jQuery val上体现的差异  

2015-02-14 17:48:16|  分类: Tips |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
参考:
https://forum.jquery.com/topic/auto-select-an-option
http://blog.jquery.com/2011/05/10/jquery-1-6-1-rc-1-released/

于最近开发中发现 在同时对select使用 jQuery的val 和通过用jQuery的attr 方法 对 option 的selected属性进行设定,以达  到select 设值的目的,会导致一种异常现象。
异常描述如下:
假设有<select><option value="1">A</option><option value="2">B</option><option value="3">C</option></select>
当在将其动态挂载前,分别以attr和al设置select的取值为2时。在select的change事件中检查当前取值,会发现,选中B时,取值为1,选中A时取值为1,选中C时取值为3。

而若在挂载前,只以attr设值,而不使用val,则不会有问题。

后多经搜索,发现,attr早已不再提倡了。应改为使用prop。

---------------------------------------------------------------------------------
更正:是事实上,attr是DOM的属性,比如你直接给html元素写上了个request_method_name。这时,只能通过attr操作。
而prop是没法操作这个属性的。
prop通常操作动态的,比如prop获取disabled。而如果用attr获取disabled便不会准确,甚至可能为undefined。
这便是attribute 和 property 在概念上的差异吧(用中文应该怎么来说呢??)。
  评论这张
 
阅读(128)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017