我有一个按钮列表。只需要从列表中选择一个按钮(第三个)。因此,一旦我单击“新按钮”,它必须执行按钮#3(ThirdButton)中的操作。我的问题是<li>
标签没有ID,因此下面的迭代失败。
<div class="listButtons" id="anyId">
<ul class="test">
<li>
<input value="Btn1" class="btn" name="Elem 1" title="Elem 1" type="button">
</li>
<li>
<input value="Btn2" class="btn" name="Elem 2" title="Elem 2" type"button">
<input value="Btn3" class="btn" name="Elem 3" title="Elem 3" type"button">
<input value="Btn4" class="btn" name="Elem 4" title="Elem 4" type"button">
</li>
</ul>
<div>
我尝试过: 1。
const newButton = $("#someId");
const buttonsList = $("ul.test")
const thirdButton = buttonsList.find("input[name='Elem 3']")
newButton.click(() => {
thirdButton.click()
})
2。
const newButton = $("#someId");
const buttonsList = $("ul.test")
const thirdButton = buttonsList.find("input[name='Elem 3']")
$(function() {
$("ul.test").find(".btn").each((index, elem) => {
let elementValue = $(elem).attr("value")
if(elementValue === "Btn3") {
newButton.click(() => {
$(elem).click()
})
}
})
答案 0 :(得分:0)
您可以按他的名字选择该项目。在您的情况下,只有一个具有相同名称的元素,因此索引为0。
<div class="listButtons" id="anyId">
<ul class="test">
<li>
<input value="Btn1" class="btn" name="Elem 1" title="Elem 1" type="button" onclick="alert(this.value)">
</li>
<li>
<input value="Btn2" class="btn" name="Elem 2" title="Elem 2" type="button" onclick="alert(this.value)">
<input value="Btn3" class="btn" name="Elem 3" title="Elem 3" type="button" onclick="alert(this.value)">
<input value="Btn4" class="btn" name="Elem 4" title="Elem 4" type="button" onclick="alert(this.value)">
</li>
</ul>
<div>
<script>
btn_to_click = document.getElementsByName("Elem 3");
btn_to_click[0].click();
</script>
答案 1 :(得分:0)
在使用Jquery时,您可以执行以下操作:
$(".test").find("li").find("input[name='Elem 3']")
答案 2 :(得分:0)
您还可以通过标签名称获取元素。 我将从获取父元素的类或id开始,然后通过带有for循环的标记名称遍历子元素。
document.getElementById('parent').getElementsByTagName('childrensTags')
然后遍历那些,直到找到所需的控件