想请大神解答一下,为什么我创建了两个文本框,在第一个文本框获取输入的数值,点击按钮后,在第二个文本框显示输入数值对应节点的下一个节点,但是为何无法显示出来?

来源:9-11 访问兄弟节点

慕工程6395767

2019-01-08 20:43

<body>

<ul id="u1">

<li id="a">javascript</li>

<li id="b">jquery</li>

<li id="c">html</li>

</ul>

<ul id="u2">

<li id="d">css3</li>

<li id="e">php</li>

<li id="f">java</li>

</ul>

<input type='text' id='txt1' />

<input type="button" name="haha" id="c2" value="dianji" onclick="get_nextSibling()" />

<input type="text" id="txt2" value="" />

<script type="text/javascript">

function get_nextSibling() {

var x = document.getElementById("txt1").value;

var zuhe = document.getElementsByTagName("li");

var y = zuhe[x].nextSibling;

while (y && y.nodeType != 1) {

y = y.nextSibling;

}

document.getElementById("txt2").value = y.innerHTML;

}

</script>

</body>

这是我的代码,我想在第一个文本框获取输入的数值,点击按钮后,在第二个文本框显示输入数值对应节点的下一个节点,但是为何无法显示出来?

写回答 关注

1回答

  • 慕数据4413692
    2019-01-14 14:22:31

    因为你代码中的取得'txt1'的值的x是字符串形式的,你需要把X转化为整数,写成var x = parseInt(document.getElementById("txt1").value);就可以了。

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题