如何使用jQuery检查HTML元素是否为空?

2022-08-29 23:42:07

我尝试仅在HTML元素为空时才调用函数,使用jQuery。

像这样:

if (isEmpty($('#element'))) {
    // do something
}

答案 1
if ($('#element').is(':empty')){
  //do something
}

有关详细信息,请参阅 http://api.jquery.com/is/http://api.jquery.com/empty-selector/

编辑:

正如一些人所指出的,浏览器对空元素的解释可能会有所不同。如果要忽略不可见的元素(如空格和换行符)并使实现更加一致,则可以创建一个函数(或仅使用其中的代码)。

  function isEmpty( el ){
      return !$.trim(el.html())
  }
  if (isEmpty($('#element'))) {
      // do something
  }

你也可以把它变成一个jQuery插件,但你明白了。


答案 2

我发现这是唯一可靠的方法(因为Chrome和FF将空格和换行符视为元素):

if($.trim($("selector").html())=='')