Javascript:检索li中存在的标签的内容
Javascript: retrieving contents of label present in li
我是javascript的新手,我没有得到以下问题的解决方案我的代码是:
<ul>
<li>
<label name = "mv"> Movie1 </label>
<label name = "sn"> Song1 </label>
<label name = "ac"> Actor1 </label>
</li>
<li>
<label name = "mv"> Movie2 </label>
<label name = "sn"> Song2 </label>
<label name = "ac"> Actor2 </label>
</li>
</ul>
我想在第一次迭代中检索movie1song1和actor1,并以相同的方式进行下一次迭代。有人请帮忙。感谢
simple:
function getData(){
var result=[];
var lis=document.getElementsByTagName('li');
for(var k=0;k<lis.length;k++){
for(var j=0;j<lis[k].childNodes.length;j++){
result[k][j]=lis[k].childNodes[j].innerHTML;
}
}
return result;
}
它将返回一个数组,数组中的每个元素都将是另一个数组。该数组的每个元素将是一个标签的值。例如,它可能会返回以下信息:
[
[
'Great Gatsby',
'Counting Stars',
'Lio Decaprio'
],
[
'Argo',
'Bangarang',
'Johnny Depp'
]
]
var labels=document.getElementsByTagName("label");
var set=labels.length/3;
var myAry=[];
for(var i=0;i<set;i++){
var str="";
for(var j=(i*3);j<(i+1)*3;j++){
str+=labels[j].innerHTML;
}
myAry.push(str); // myAry[0]= movie1 song1 actor1, myAry[1]=movie1 song1 actor1
}
http://jsfiddle.net/wsfFh/
工作演示
a=document.getElementsByTagName("ul");
console.log(a[0].childNodes[1].innerText);
这会给你想要的。如果您想要第二个列表,请使用以下
console.log(a[0].childNodes[3].innerText);
编辑:不知何故,Firefox不具有.innerText属性。另一种选择是使用
.text内容
跨浏览器兼容。经过IE、Chrome、FF 测试
FIDDLE
使用jQuery 更容易
$("li").each(function(){
var text = "";
$(this).children().each(function(){
text += " " + $(this).text()
});
console.log(text)
});
相关文章:
- 由于存在标签('#')特殊字符,URL无法工作
- 如何使用 jquery 检查该值是否存在于带有标签的 select2 下拉列表中:true
- 检查标签是否存在
- jQuery:添加和删除<br>标签,这取决于窗口宽度以及标签是否已经存在
- Chrome 标签页的永久唯一 ID,在浏览器会话之间持续存在
- 检测是否存在属性为 [itemtype='http://schema.org/Offer'] 的标签的最
- 检查标签/类是否存在几个标签
- 检查值存在于标签管理器验证器方法内的数组中
- 当存在多个标签时,无法突出显示文本
- 是否存在标签“1”的优选位置;标签为“;,使用jQuery Mobile
- 钛合金开口标签组存在问题
- Javascript:检索li中存在的标签的内容
- 检查CasperJS中是否存在标签(而不是选择器)
- 如何检查嵌套标签的内容是否存在
- php包含未加载的内容,可能存在哈希标签/地址问题
- Jquery xml标签是否存在
- 标签为什么存在?
- 如何获得文本框值?它存在于输入标签中,但不存在于文本框中
- 最小的JavaScript所见即所得-删除标签从选定的文本,如果已经存在
- 如何为html中已经存在的标签创建和使用自定义属性?