gpt4 book ai didi

javascript - 如何在没有jquery的情况下获取最接近的输入文本的id?

转载 作者:行者123 更新时间:2023-12-02 18:05:53 25 4
gpt4 key购买 nike

在 IE 7 中做我的项目(不幸的是)。我有这个 DOM,我想知道位于我单击的按钮之后的最近输入文本的 ID,而不是它之前的输入文本。下面是 DOM 示例:

<input type="text" id="txt1" />
<br/>
<button>Get ID</button>
<input type="text" id="txt2" />
<br/>

我知道如何在 Jquery 中做到这一点,但有人知道如何以“困难”的方式做到这一点(如果可能的话)?谢谢。

最佳答案

如果他们总是这样的 sibling ,那应该很容易。

var nextInputId = buttonClicked.nextSibling.id;

jsFiddle .

这很脆弱,除了一组非常简单的有限标记之外,不建议用于任何其他用途。

不幸的是,nextElementSibling 在 IE9 之前才可用,因此如果您在那里有一个文本节点(甚至是一些空格),您就会遇到一些麻烦。

一个相对稳健的非常好的解决方案是......

var node = buttonClicked;
var nextInputId = null;

while (node = node.nextSibling) {
if (node.tagName && node.tagName.toLowerCase() == "input") {
nextInputId = node.id;
break;
}
}

jsFiddle .

关于javascript - 如何在没有jquery的情况下获取最接近的输入文本的id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20110210/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com