簡體   English   中英

用文本在div中找到div

[英]Find div inside div with text

我沒有粘貼所有div內容,因為它太長了

<div id="calendar_month">
    <div>
        <div></div>
        <div>DEMO</div>
    </div>
</div>

我試過這個

 $("#calendar_month").children().each(function () {
     if ($(this).text() == "DEMO") {
         $(this).text("");
     }
 });

你可以使用:contains()

$( "#calendar_month div:contains('DEMO')" )

或者在您編輯OP之后:

 $( "#Calendar > div > div:contains('DEMO')" ).text(""); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <div id="Calendar"> <div> <div>test</div> <div>DEMO</div> </div> </div> 

或者在@BhushanKawadkar評論之后你可以使用.filter()

 $( "#Calendar > div > div" ) .filter(function( index ) { return $(this).text() == "DEMO"; }).text(""); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="Calendar"> <div> <div>test</div> <div>DEMO</div> </div> </div> 

div包含文本DEMO不是直接孩子div id為calendar_month 在您的HTML中, children()將僅返回第一個div。

使用find()

嘗試:

$("#calendar_month").find('div').each(function () {
     if ($(this).text() == "DEMO") {
         $(this).text("");
     }
 });

DEMO

或者使用另一種方式(不推薦但只是發布邏輯)到這個特定的標記

$("#calendar_month").children().children().each(function () {
     if ($(this).text() == "DEMO") {
         $(this).text("");
     }
 });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM