在jquery中怎么判断是不是存在

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在jquery中怎么判断是不是存在相关的知识,希望对你有一定的参考价值。

在web前端开发中,经常会遇到判断一个对象是否存在的问题,一些开发者使用如下代码来判断

if($("#object_id"))



alert('对象存在');



else



alert('对象不存在');



其实以上代码是错误的判断写法,因为 jQuery选择器获取页面的element时,无论element是否存在,都会返回一个object对象,以上代码都将执行 alert('对象存在')。

正确的判断写法如下:

if($("#object_id").length>0)



alert('对象存在');



else



alert('对象不存在');



使用 jQuery 对象的属性 length 来判断,如果大于0则表示存在,等于0则表示不存在。
参考技术A Jquery检查某个元素在网页上是否存在可以根据获取到的元素的长度来判断
if($("#id").length>0)

//do something


或者转化为DOM对象判断
if($("#id")[0])

//do something

如何判断Dynamic类型的属性是不是存在

参考技术A 在JQuery编码中,我们会判断元素是否存在某个属性.比如是否包含 class="new" 的样式呢.JQuery判断就非常简单了,因为有 hasClass这个方法 $("input[name=new]").hasClass("new") 即可判断.
但是有时候我们需要判断别的属性,比如有的 a 链接包含 rel 属性,有的没有rel属性.这时该怎么判断呢?
这时就没有现成的方法了. 如果存在某个属性 $("#aid").attr("rel") 会返回 rel的值,如果不存在 rel属性则会返回"undefined"
undefined 就是 undefined类型 , if($("#aid").attr("rel")=="undefined") 这个判断可能不成立.
因为类型不相同.
建议使用 if(typeof($("#aid").attr("rel"))=="undefined") 即可本回答被提问者采纳

以上是关于在jquery中怎么判断是不是存在的主要内容,如果未能解决你的问题,请参考以下文章

jquery怎么判断一个属性是不是存在

jquery怎么判断页面中是不是存在某元素

jquery怎么判断对象是不是存在

jquery怎么判断是不是有某个子元素

js,jquery分别怎么判断页面元素是不是存在

js或者jQuery判断链接是不是存在