[英]Get the content of a paragraph that is inside a div that is inside a li using jquery
使用 jQuery 我想在div name="name"
獲取段落類.card__text
的文本(即Rotten one
);
<li id="d318" class="cards__item long">
<div class="card long">
<div name="nick" class="card__content long cell0">
<p class="card__text">Johnny one</p>
</div>
<div name="name" class="card__content long cell1">
<p class="card__text">Rotten one</p>
</div>
<div name="descr" class="card__content long cell2">
<p class="card__text">One. This was a story of Johnny Rotten</p>
</div>
</div>
</li>
我試過:
$("li#d318").first('.name').text();
$("li#d318").closest('.card__text').text();
您可以使用#d318 .card__content.cell1
直接選擇元素。 另請注意, div
元素沒有name
屬性,因此您的 HTML 無效。 應該刪除這些屬性。 嘗試這個:
let text = $('#d318 .card__content.cell1').text().trim(); console.log(text);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul> <li id="d318" class="cards__item long"> <div class="card long"> <div class="card__content long cell0"> <p class="card__text">Johnny one</p> </div> <div class="card__content long cell1"> <p class="card__text">Rotten one</p> </div> <div class="card__content long cell2"> <p class="card__text">One. This was a story of Johnny Rotten</p> </div> </div> </li> </ul>
謝謝,但假設我沒有這些類(
cell0
、cell1
、cell2
...),我該怎么做?
在這種情況下,您可以像這樣使用:nth-child
:
let text = $('#d318 .card__content:nth-child(2)').text().trim(); console.log(text);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul> <li id="d318" class="cards__item long"> <div class="card long"> <div class="card__content long cell0"> <p class="card__text">Johnny one</p> </div> <div class="card__content long cell1"> <p class="card__text">Rotten one</p> </div> <div class="card__content long cell2"> <p class="card__text">One. This was a story of Johnny Rotten</p> </div> </div> </li> </ul>
我不會使用“name”屬性來創建唯一的 div,而是將“cell0”、“cell1”和“cell2”從類名更改為 div 的 id,因為它們似乎沒有被重用,因此可以是每個 div 的唯一標識符。 這是我的意思的一個例子......
let text = $('#d318 #cell1 .card__text').text().trim() console.log(text) //or $('#output').text(text);
<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> </head> <body> <li id="d318" class="cards__item long"> <div class="card long"> <div id="cell0" class="card__content long"> <p class="card__text">Johnny one</p> </div> <div id="cell1" class="card__content long"> <p class="card__text">Rotten one</p> </div> <div id="cell2" class="card__content long"> <p class="card__text">One. This was a story of Johnny Rotten</p> </div> </div> </li> <div> Results: <span id='output'></span></div> </body> </html>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.