2017-09-09 20 views
0

我有一个HTML段落,如果它是空的我想用jQuery显示警报如何。我曾尝试以下:如何检查数据存在与否在HTML ID

var abc= $("#foo").text(); 
 
var abc= $("#foo").data(); 
 
var abc= $("#foo").val(); 
 

 
if (abc== '') { alert('working'); }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p id="foo"></p>

+1

这有什么错,你已经尝试过什么?有用。 –

+0

是的,这是工作... – BenM

+0

它正在与长度实际上我正在检查表tr存在与否 –

回答

1

val()用于检索input的价值,而不是元素的文本节点值。 data()用于检索元素的数据值,而不是其文本节点值。

要检查元素是否包含任何东西,应该使用text()。另外值得一提的是,您可能(或可能不)需要使用$.trim()忽略空白,并使用children()也检查不具有任何文本子元素:

var $p = $('#foo'), 
 
    empty = ($.trim($p.text()) == '' && !$p.children().length); 
 

 
console.log(empty);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p id="foo"></p>


尽管如此,不是为了这个滚动自己的功能,你可以使用jQuery的is()函数,加上:empty选择器:

console.log($('#foo').is(':empty'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p id="foo"></p>

1

试试这个:

var abc = $("#foo").text() 
if(!abc) { 
alert('not working'); 
} else { 
    alert('working'); 
}