jQuery 判断页面元素是否存在

在传统的Javascript里,当我们对某个页面元素进行某种操作前,最好先判断这个元素是否存在。原因是对一个不存在的元素进行操作是不允许的。

例如:

document.getElementById("someID").innerHTML("hi");

如果ID为"someID"的元素不存在,我们将得到Javascript运行错误:document.getElementById("someID") is null

正确的写法应该是:

   obj = document.getElementById("someID");
    if (obj){
       obj.innerHTML("hi");
    } 

那么在jQuery,我们如何判断页面元素存在与否呢?如果参照上面的传统Javascript的写法,我们第一个想到的办法一定是:

if ($("#someID")){
    $("#someID").text("hi");
} 

可是这么写是不对的!因为jQuery对象永远都有返回值,所以$("someID") 总是TRUE ,IF语句没有起到任何判断作用。正确的写法应该是:

    if ( $("#someID").length > 0 ) {
        $("#someID").text("hi");
     } 

注意 :判断某个页面元素存在与否在jQuery实际上是没有必要的,jQuery本身会忽略 对一个不存在的元素进行操作,并且不会报错

$(document).ready(function(){
      var value=$('#btn_delXml').length;
      if(value>0){
          alert('Extsts');
        }else {
          alert('not Extsts');
        }
}) 

总结:

jQuery选择器获取页面的element时,无论element是否存在,都会返回一个对象。例如: 

var my_element = $("#element_Id" )

此时的变量my_element就是一个对象,既然是一个对象,这个对象就具有length的属性,因此,用以下代码可以判断元素(对象)是否存在:

if(my_element.length>0){
    alert("element is exist.");
}else{
    alert("element not be found");
} 

jQuery 判断页面元素是否存在,布布扣,bubuko.com

时间: 2024-10-01 05:57:32

jQuery 判断页面元素是否存在的相关文章

jquery判断页面元素是否存在的方法

jQuery基础 -- 如何判断页面元素存在与否

在传统的Javascript里,当我们对某个页面元素进行某种操作前,最好先判断这个元素是否存在.原因是对一个不存在的元素进行操作是不允许的.例如: document.getElementById("someID").innerText("hi"); 如果ID为"someID"的元素不存在,我们将得到Javascript运行错误:document.getElementById("someID") is null 正确的写法应该是

jQuery判断当前元素显示状态并控制元素的显示与隐藏

1.jQuery判断一个元素当前状态是显示还是隐藏 $("#id").is(':visible');   //true为显示,false为隐藏 $("#id").is(':hidden');   //true为隐藏,false为显示 if($("#id").is(':hidden')){ //逻辑代码 } 2.jQuery控制css的display $("#id").show();    //表示display:block $

jQuery实现页面元素智能定位

原文:jQuery实现页面元素智能定位 源代码下载地址:http://www.zuidaima.com/share/1550463635950592.htm

jQuery -- 如何使用jQuery判断某个元素是否存在

通常我们要判断某个元素是否存在是用: [javascript] view plaincopy if(document.getElementById('example')) { // do something } else { // do something else } 然而在使用jQuery时,我们可以使用: [javascript] view plaincopy if($('#example').length) { // do something } else { // do somethi

jQuery判断当前元素是第几个元素&获取第N个元素

jQuery判断当前元素是第几个元素&获取第N个元素 假设有下面这样一段HTML代码: <ul> <li>jQuery判断当前元素是第几个元素示例</li> <li>jQuery获取第N个元素示例</li> <li>jQuery选择器示例</li> </ul> jQuery判断当前元素是第几个元素 如果我们点击任何一个li标签,想知道当前点击的是第几个li标签,可以使用下面的代码: $("ul

用jQuery判断一个元素的各种状态

用jQuery判断一个元素是否显示 用jQuery判断一个元素是否显示:$(element).is(":visible"); 类似的,判断一个元素是不是第一个子元素:$(element).is(":first-child") 判断一个checkbox元素是否选中:$(element).is(":checked") 判断一个元素是否存在:$(element).length 判断一个字符串中是否包含其他字符串:str.indexOf("ab

expected_conditions判断页面元素

expected_condtions提供了16种判断页面元素的方法: 1.title_is:判断当前页面的title是否完全等于预期字符串,返回布尔值 2.title_contains:判断当前页面的title是否包含预期字符串,返回布尔值 3.presence_of_element_located:判断某个元素是否被加到dom树下,不代表该元素一定可见 4.visibility_of_element_located:判断某个元素是否可见,可见代表元素非隐藏,并且元素的宽和高都不为0 5.vis

selenium—用NoSuchElementException异常判断页面元素是否存在

一.知识补充 1.find_element的一种使用方法: find_element(by=方法,value=值) 例如: find_element(by="id",value="query") 2.selenium.common.exceptions模块 from selenium.common.exceptions import NoSuchElementException 使用WebDriver实施自动化过程中抛出的所有异常都是用selenium.common