Jquery 1.6+ .prop()与.attr()方法比较

转载 2012年03月26日 14:38:44

今天在用JQuery的时候发现一个问题用.attr("checked")获取checkbox的checked属性时选中的时候可以取到值,值为"checked"但没选中获取值就是undefined.

$("#category_professional").click(function(){
    if($("#category_professional").prop("checked")==true)//如果选中专业类,下面则可用
	{
	 $("#source4,#target4,#source5,#target5,#source6,#target6").removeAttr("readonly");
	 $("#source4,#target4,#source5,#target5,#source6,#target6").attr("suggesturl","GetTranslatorlist.ashx");
	   $("#source4,#target4").attr("class","required textInput valid");//如果选择了则第一个为必填
	}else
	{
	
     $("#source4,#target4,#source5,#target5,#source6,#target6").attr("readonly","readonly");
	  $("#source4,#target4,#source5,#target5,#source6,#target6").attr("suggesturl","");
	  
	}

})



解决这个文章我参考了这个帖子:

http://bugs.jquery.com/ticket/9812

为什么jquery 1.6+增加了.prop()方法,因为在有些浏览器中比如说只要写disabled,checked就可以了,而有的要写成disabled = "disabled",checked="checked"。所以,从1.6开始,jq提供新的方法“prop”来获取这些属性。
 以前我们使用attr获取checked属性时返回"checked"和"",现在使用prop方法获取属性则统一返回true和false。
那么,什么时候使用attr,什么时候使用prop??
1.添加属性名称该属性就会生效应该使用prop.
2.是有true,false两个属性使用prop.
3.其他则使用attr
项目中jquery升级的时候大家要注意这点!
以下是官方建议attr(),prop()的使用:
 
Attribute/Property .attr() .prop()
accesskey  
align  
async
autofocus
checked
class  
contenteditable  
draggable  
href  
id  
label  
location ( i.e. window.location )
multiple
readOnly
rel  
selected
src  
tabindex  
title  
type  
width ( if needed over .width() )

相关文章推荐

jquery 1.6以后attr对于checked不起作用,其替代方法为prop

jquery 1.6以后attr对于checked不起作用,其替代方法为prop .prop() Categories: Attributes | Manipulation > General...

jquery1.6中的.prop()和.attr()异同

最近在iteye的新闻中看到jQuery已经更新到了1.6.1。和之前版本的最大变化是增加了.prop方法。但是.prop()方法和.attr()方法,单从字面上很难区分。在汉语中properties...

jquery1.6中的.prop()和.attr()异同

最近在iteye的新闻中看到jQuery已经更新到了1.6.1。和之前版本的最大变化是增加了.prop方法。但是.prop()方法和.attr()方法,单从字面上很难区分。在汉语中properties...

jquery1.6中的.prop()和.attr()异同

原文地址:http://hxq0506.iteye.com/blog/1046334

Jquery操作元素属性方法总结(attr()、prop())

知识点一:获得、设置元素的属性获取: attr("属性名") 获得属性名对应的属性值,都可以使用 prop("属性名") 获得属性名对应的属性值,一般使用在获取属性值为两种的情况,另外...

jQuery中attr()和prop()方法的介绍

1、jQuery中用attr()方法来获取和设置元素属性。attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式。attr(属性名);...

jquery利用attr、prop方法获取、设置input的checked属性

在jquery中应该使用prop方法来获取和设置checked属性,不应该使用attr,需要的朋友可以参考下

jQuery中prop()和attr()方法的测试和总结

对应单选按钮和复选框的选中一般都是通过增加属性checked="checked"来使选中,但是在使用jquery时遇到了一些问题,自己做了一个测试,大家可以借鉴下。 期望的结果是,勾选男,点击勾选女...
  • nyhyn
  • nyhyn
  • 2015-12-13 21:53
  • 382

jQuery 中 attr() 和 prop() 方法的区别

先说结论: (根据官方的建议:具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr()) 再看原因...

jQuery 中 attr() 和 prop() 方法的区别

http://www.cnblogs.com/zhwl/p/3520162.html前几天,有人给 Multiple Select 插件 提了问题:setSelects doesn’t work in...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)