[英]jQuery Selector, All Spans Within DIV
$("#" + mainContent).children("span").replaceWith(function(){ return $(this).text(); });
使用上面的代碼行我似乎無法用文本值替換所有跨度。
html看起來像
<div id="bla" contenteditable="true">
<span> bla finds this one</span>
<div>
<span> doesnt find me </span>
</div>
</div>
如何選擇div“bla”中的所有跨度並全部替換它們?
替換工作只是找不到。
使用.find
[文件]代替.children
。 它尋找所有后代,而不僅僅是孩子。
查看所有不同遍歷方法的jQuery API: http : //api.jquery.com/category/traversing/tree-traversal/ 。
你可以試試:
$('span',"#" + mainContent).each(function(){this.html('Something Different')})
取決於你想要替換它們的東西。
jQuery的children()
函數只匹配直接子節點。 在DOM結構的情況下,只有一個<span>
元素是選擇器匹配的<div>
的直接子元素。 如果要查找由選擇器匹配的元素層次結構下的所有元素,則需要使用find()
在層次結構中執行搜索,或者您必須修改選擇器:
$('div span')
匹配div下面的所有跨距以及DOM層次結構中的所有跨距。
$('div > span'
)匹配DOM中div的所有直接跨度子節點。
使用.find()而不是.children():
$("#" + mainContent).find("span").replaceWith(function(){ return $(this).text(); });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.