javascript - JQuery:如果存在具有相同ID的元素,则选择第二个元素

标签 javascript jquery html

我知道对不同的元素使用相同的 id 不是一个好习惯,但在某些情况下我不得不对两个不同的元素使用相同的 id(这将在原始程序中自动生成)

我正在尝试选择具有相同 id 的第二个元素(或者在缩放时说第 n 个元素)。

有办法吗?

我在这里创建了一个代码片段,它显示了这个问题。

$("#btn").click(function(){
  
  $("#test").css("background","blue");

});
#test {
  height: 100px;
  width: 100px;
  border: 1px solid #ccc;
  margin:10px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id="test">
</div>

<div id="test">
</div>

<button id="btn">Click Me</button>

最佳答案

您不能有重复的 ID,但如果您不能这样做,您可以使用 Attribute Equals Selector [name=”value”]:eq(index) . :eq 获取集合元素的索引。您可能还想使用背景颜色。

Live Demo

 $("[id=test]:eq(1)").css("background-color","blue");

关于javascript - JQuery:如果存在具有相同ID的元素,则选择第二个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36147791/

相关文章:

javascript - 检查任意长字符串中的数字顺序

javascript - JS Promise 包装函数返回 "Cannot read property ' 0' of undefined"

javascript - jQuery 脚本在 jsFiddle 上运行但不在本地运行

javascript - Jquery 更新所选 div 上的文本

javascript - 从没有类和 id 的 anchor 标记更改 href

如果语句为真,Javascript 按键保持跟踪直到第二个

javascript - 用JS改变滚动时的颜色效果

javascript - 使用 JQuery 选择最后添加的元素

javascript - JS 在 JavaScript 中绘制多色螺旋

javascript - jQuery 问题 : functions won't work on newly created HTML element