Home  >  Article  >  php教程  >  A simple way to determine whether a DOM node exists using JS/jQuery

A simple way to determine whether a DOM node exists using JS/jQuery

高洛峰
高洛峰Original
2016-12-05 14:26:281402browse

JS natively determines whether a DOM node exists in the page

JavaScript native function does not provide a method to determine whether a DOM node exists. We usually obtain DOM nodes using the document.getElement.. method, which will return an object array set. We can use object [0], object[1] is used to access each object in this collection. Since an array set is returned, there is a length attribute, and length greater than or equal to 1 means that the DOM node exists in the page. Code:

Object.prototype.exist = function(){
 if(typeof this !='undefined' && this.length>=1){
  return true;
 }
  
 return false;
};

Usage:

Assume that the page has the following nodes

<div>这里是DIV节点</div>
<div>这里是DIV节点</div>
<span>这里是span节点</span>

Determine whether the node is on the page:

var is_exist = document.getElementsByTagName(&#39;div&#39;).exist();
alert(is_exist); // true
  
var is_exist = document.getElementsByTagName(&#39;span&#39;).exist();
alert(is_exist); // true
  
var is_exist = document.getElementsByTagName(&#39;p&#39;).exist();
alert(is_exist); // false

Note: If you use the document.getElementById() method to obtain the object, you cannot use the exist() method, because the method of getting the node object based on the ID cannot be obtained. In the case of nodes, an empty object will be returned and the prototype exist() function will not be integrated, so an error will be reported! So if you are fetching the object based on the ID, you can directly if(obj). This way you can determine whether the DOM node exists in the page.

jQuery determines whether the DOM node exists in the page.

You can do this

Add prototype:

(function($) {
 $.fn.exist = function(){
  if($(this).length>=1){
   return true;
  }
  return false;
 };
})(jQuery);

How to use:

If the page has the following DOM nodes

这里是id=a节点
<div>这里是DIV节点</div> <div>这里是DIV节点</div> <span>这里是span节点</span>

Judgment:

alert($(&#39;#aaa&#39;).exist()); // false
alert($(&#39;#a&#39;).exist()); // true
alert($(&#39;div&#39;).exist()); // true
alert($(&#39;p&#39;).exist()); // false

The above two methods actually determine whether the object exists based on the length attribute of the object collection.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:BootStrap editable tableNext article:BootStrap editable table