Javascript nodelist提取文本问题 [英] Javascript nodelist fetching text problem

查看:100
本文介绍了Javascript nodelist提取文本问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一些div:

i have some div that are:

<div class="well well-sm" id="skillDIVERTHF"><span >erthf</span><a href="javascript:removeOtherDiv('hSkillItem','skill','erthf','subCatId');"><div class="business_type_close">X</div></a><input type="hidden" value="erthf" name="Hidskill8" id="Hidskill8"></div>









这里divs类名是一样的,所以在这里我使用循环来获取每个divs span文本。这是代码





here the divs class name is same so here i use loop for fetching every divs span text. here is code

var divs = document.getElementsByClassName("well-sm");
		if(divs != null)
		{
			for (var i =0; i<divs.length; i++)
			{
				//according to NodeList
				var strHidValue = divs.item(i).innerHTML;
				var strText = strHidValue.document.getElementsByTagName("span").innerText;
			}
		}







但我无法获得跨文本。此代码显示错误:




but i can't get span text.this code show an error that is:

Cannot read property 'document' of undefined



plz帮助我如何获取相同命名div的跨区文本。



我尝试过:



var strHidValue = divs.item(i)。 innerHTML;

var strText = strHidValue.document.getElementsByTagName(span)。innerText;


plz help me how can i fetch the span text of same naming div.

What I have tried:

var strHidValue = divs.item(i).innerHTML;
var strText = strHidValue.document.getElementsByTagName("span").innerText;

推荐答案

innerHTML 属性返回字符串。字符串没有文档属性。



即使他们这样做了,你也不想获取文档中的所有< span> 元素;你想要特定的< div> 中的元素。



此外, getElementsByTagName 返回一个元素集合,它没有名为 innerText 的属性。



尝试在< div> 元素上调用 getElementsByTagName

The innerHTML property returns a string. Strings do not have a "document" property.

Even if they did, you don't want to fetch all of the <span> elements in the document; you want the elements within the specific <div>.

Also, getElementsByTagName returns a collection of elements, which doesn't have a property called innerText.

Try calling getElementsByTagName on the <div> element:
var divs = document.getElementsByClassName("well-sm");
for (var i = 0; i < divs.length; i++) {
    var div = divs[i];
    var span = div.getElementsByTagName("span")[0];
    if (span) {
        var strText = span.innerText;
        ...
    }
}


这篇关于Javascript nodelist提取文本问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆