首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >消失的nodeValue

消失的nodeValue
EN

Stack Overflow用户
提问于 2013-02-02 06:06:22
回答 1查看 52关注 0票数 0

我正在试着写一个Javascript来排序一些段落。下面是我正在排序的HTML的一小部分:

代码语言:javascript
复制
<p>Brown, John, 2010, <a href="#">Link</a></p>

<p>Bush, C.A., 2010, <a href="#">Link</a>: More info.</p>

<p><br></p>
<h3><a name="c">C</a></h3>

<p>Caine, J.S., and Minor, S.A., 2010, <a href="#">Link</a>: More</p>

此Javascript正在查找包含"2010“的条目(这是4个段落中的3个):

代码语言:javascript
复制
var paras = document.getElementsByTagName("p");
alert( paras.length );  // 4, which is what I expect!

for( i=0; i < paras.length ; i++ ) {
    var node0_text = paras[i].childNodes[0].nodeValue;

    if ( node0_text.indexOf('2010') ) {
        alert( node0_text ); // not returning everything that I expect it to.
    };
}

当我运行此命令时,警告框中会弹出前两个条目("Brown“和”布希“),正如我所预期的那样。然后,脚本似乎就死了。它不显示第三个("Caine")条目。这里出了什么问题?感谢您的任何意见。

指向它的链接:http://jsfiddle.net/Jrmy/6MP2W/5/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-02 06:09:38

"Caine“词条在fourth段落中。脚本失败,因为第三段没有文本。

这是第三段:

代码语言:javascript
复制
<p><br></p>

文本为null,因此if语句在尝试访问.indexOf()时得到一个异常。

(edit -一个很好的注释指出正在检查值的是<br>标记,但这也是空的。)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14655821

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档