
Jquery中一些查找与处理一、判断对象对象是否存在如果是下面的 jQuery 代码判断一个对象是否存在,是不能用的if($("#id")){}else{}因为$(“#id”) 不管对象是否存在都会返回 object 。正确使用判断对象是否存在应该用:if($("#id").length>0){}else{}使用jQuery 对象的属性 length 来判断,如果 >0 就存在。或者 if($("#id")[0]){} else {} 或者直接使用原生的 Javascript 代码来判断: if(document.getElementByIdx_x_xx_x("id")){} else {}或者var g = document.getElementByIdif (g('addrId_324') != null) { //判断是否存在这个id号,不存在则为null g('addrId_' + selAddressId).className = ''} JQuery 判断某个属性是否存在 hasAttr在JQuery编码中,我们会判断元素是否存在某个属性.比如是否包含 class="new"的样式呢.JQuery判断就非常简单了,因为有hasClass这个方法 $("input[name=new]").hasClass("new") 即可判断.这时就没有现成的方法了. 如果存在某个属性 $("#aid").attr("rel") 会返回 rel的值,如果不存在 rel属性则会返回"undefined"undefined 就是 undefined类型 , if($("#aid").attr("rel")=="undefined") 这个判断可能不成立.因为类型不相同.建议使用 if(typeof($("#aid").attr("rel"))=="undefined") 即可判断JS对象是否拥有某属性两种方式,但稍有区别1,in 运算符123varobj = {name:'jack'}alert('name'inobj)// -->truealert('toString'inobj)// -->true可看到无论是name,还是原形链上的toString,都能检测到返回true。 2,hasOwnProperty 方法?123varobj = {name:'jack'}obj.hasOwnProperty('name')// -->trueobj.hasOwnProperty('toString')// -->false原型链上继承过来的属性无法通过hasOwnProperty检测到,返回false。需注意的是,虽然in能检测到原型链的属性,但for in通常却不行。当然重写原型后for in在IE9/Firefox/Safari/Chrome/Opera下是可见的。见:for in的缺陷<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<script type="text/javascript">
<!--
function lookProperty(obj){
ob=eval(obj)
var Property=""
for(var i in ob){
Property+="属性:"+i+"<br/>"
document.getElementById("myp").innerHTML=Property
}
}
//-->
</script>
</head>
<body>
<div id="myp"></div>
<button onclick="lookProperty(currentStyle)">查看属性</button>
</body>
</html>
给你写了个小程序,点击查看属性按钮,就能看到该对象的所有属性。
把lookProperty()里的参数换成你想要查看的对象即可。