我想使用 jQuery 來檢查 div 中是否有任何文本。如果確實如此,則顯示 div 否則將其隱藏。
例如:
<div id="demo_div"></div>
<script>
$( document ).ready(function() {
if ($("#demo_div") has some text) {
$("#demo_div").show();
}
else
{
$("#demo_div").hide();
}
});
我應該使用哪個 jQuery 函式來檢測 div 里面是否有文本?
謝謝!
uj5u.com熱心網友回復:
- 首先識別div的文字內容
- 修剪它以洗掉任何尾隨空格
let showHide = function($selector)
{
let text = $selector.text().trim();
if (text.length > 0)
{
console.log("showing", $selector.attr("id"));
$selector.show();
}
else
{
console.log("hiding", $selector.attr("id"));
$selector.hide();
}
}
showHide($("#demo_div") );
showHide($("#demo_div2") );
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="demo_div"> 1</div>
<div id="demo_div2"></div>
uj5u.com熱心網友回復:
您可以在 jquery 中使用其中一個text()或html()函式,然后檢查回傳的字串是否長于零。trim()如果您不想考慮空格,您也可以選擇結果。
<div id="demo_div"></div>
<script>
$( document ).ready(function() {
if ($("#demo_div").text().trim().length > 0) {
$("#demo_div").show();
}
else
{
$("#demo_div").hide();
}
});
</script>
顧名思義,text()檢索節點的文本部分,同時html()檢索包括 html 標簽在內的所有內容。您可以選擇適合您需要的。
uj5u.com熱心網友回復:
if ($("#demo_div").is(':empty')) {
// Whatever you want to do
}
這可能會解決您的問題,但請記住換行符或空格不被視為空。
對于更一般的情況,例如您想洗掉空格并進行檢查。在這種情況下,您可以像這樣使用修剪功能和 html 方法
if (!$.trim($("#demo_div").html()) {
// Process
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/475278.html
上一篇:如何使用字串中的HTML代碼?
