慕工程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>
这是我的代码,我想在第一个文本框获取输入的数值,点击按钮后,在第二个文本框显示输入数值对应节点的下一个节点,但是为何无法显示出来?
因为你代码中的取得'txt1'的值的x是字符串形式的,你需要把X转化为整数,写成var x = parseInt(document.getElementById("txt1").value);就可以了。
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题
回答 3
回答 5