JQuery:如果存在具有相同 ID 的元素,则选择第二个元素
JQuery:Selecting second element in case element with same ID exists
我知道对不同的元素使用相同的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,但如果不能这样做,您可以将属性等于选择器 [name="value"] 与 :eq(index) 一起使用。:eq
采用集合元素的索引。您可能还想使用背景色。
现场演示
$("[id=test]:eq(1)").css("background-color","blue");
请尝试改用 data-id 属性,因为重复的 id 会产生不可预知的行为。
$("#btn").click(function(){
$("[data-id='test']:eq(1)").css("background","blue");
});
[data-id='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 data-id="test">
</div>
<div data-id="test">
</div>
<button id="btn">Click Me</button>
$("#test:eq(1)").css("background-color","blue");
相关文章:
- 角度指令:指向第二个元素
- 如何将第二个元素id注入到网站元素中
- 第二个下拉菜单元素上的重复下拉Javascript效果
- 如何针对JQuery中的第二个元素
- 情商不正确,第二个元素
- Jquery:选择tr元素的第二个td
- 将第二个背景图像添加到元素中
- 检测点击元素的内部文本,而不将文本包装在第二个元素中
- JQuery:如果存在具有相同 ID 的元素,则选择第二个元素
- 如果第二个 html 元素位于第一个 html 元素上方,如何移动该元素
- 从一个页面调用 javascript 函数以在第二个页面上添加元素
- 如何将两个 html 元素绑定在一起,当第一个元素被删除时,第二个元素也从 DOM 中删除
- 单击角度表元素上的事件,将其定向到由所选元素的 ID 组成的第二个 URL
- 我可以通过 Javascript 中第一个元素的值选择二维数组的第二个元素吗?
- 将最后一个元素移动到数组中的第二个项目的最快方法
- 循环遍历数组并成对输出(每个第二个元素的分隔符)
- 在 javascript 中创建第二个 html 元素会删除第一个
- 如何从数组中获取第一个元素和第二个元素中的值
- 如何在第二个元素之后插入
- 将类分配给第二个元素 Java 脚本