2017-09-09 3 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()を使用する必要があります。

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>


:それはまた、あなたが(またはしない場合があります)空白を無視する、とも children()を使用して、任意のテキストを持っていない子要素をチェックするために $.trim()を使用する必要があることは注目に値します

さらに、これに独自の関数をローリングするのではなく、:emptyセレクタと組み合わせて、jQueryのis()関数を使用できます。

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'); 
} 
関連する問題