[英]Get Child inner HTML
伙计们,我有一些这样的HTML:
<ul id="view-id54795_breadcrumbs" class="xbreadcrumbs">
<li id="view-id54795_bcitem0" class="ncurrent">All XYZ</li>
<li id="view-id54795_bcitem1" class="current">ABC</li>
</ul>
我需要孩子中的文字,因此我从简单的功能开始,例如:
console.log($('#'+t.view.id+'_breadcrumbs').childNodes);
//console.log($('#'+t.view.id+'_breadcrumbs').getChildren());
两者都没有工作。 我也尝试了下面的功能
$(function(){
var child = $('#'+t.view.id+'_breadcrumbs').find('li.t.view.id_');
console.log(child.innerHTML);
var idArray = new Array();
if(child.length) {
$.each(child,function(i,entry) {
idArray.push($(this).attr('id'));
});
}
console.log(idArray);
});
PS。
上面的功能代码已使用jquery .find()从参考文章中获取来获取child 。 任何建议将不胜感激。
谢谢。
那这个选择器呢?
$('.xbreadcrumbs li')
一个更完整的版本是:
$(function(){
var children = $('.xbreadcrumbs li');
children.each(function(i,v)
{
console.log($(v).text());
});
});
var list = document.getElementById('view-id54795_breadcrumbs');
list.forEach(function(element) {
console.log(element.innerHTML);
});
注意:forEach仅在ECMAScript 5实现中可用,对于普通JS很抱歉,我不知道jQuery
尝试这样的事情:
var ul = $('#'+t.view.id+'_breadcrumbs');
var children = ul.find('li[id^="' + t.view.id + '"]');
var childText = [];
for(var i = 0; i < children.length; i++){
childText.push(children[i].innerHTML);
}
jQuery查找使用'startsWith'选择器,因此将返回ID以t.view.id
开头的li
。
childText应该用每个li
文本填充。
看到小提琴
只需选择您的ul并通过li标签选择器执行.find()
$(function(){
var children = $('#view-id54795_breadcrumbs').find('li');
var idArray = new Array();
if(children.length) {
$.each(child,function(i,entry) {
console.log($(this).html());
idArray.push($(this).attr('id'));
});
}
console.log(idArray);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.