javascript - JQuery onclick 函数显示所有锚标记的相同 id
问题描述
单击每个锚标记时,显示其自己的 ID。但现在我点击每个锚标记然后显示相同的 id check1 。
<div id="test">
<a class="link" id="check1" href="#">1</a>
<a class="link" id="check2" href="#">2</a>
<a class="link" id="check3" href="#">3</a>
<a class="link" id="check4" href="#">4</a>
<a class="link" id="check5" href="#">5</a>
<a class="link" id="check6" href="#">6</a>
<a class="link" id="check7" href="#">7</a>
</div>
<script>
$(document).ready(function(){
$('#test a').click(function(){
var ids=$('a').attr('id');
alert(ids);
});
});
</script>
解决方案
使用$(this).attr('id')
. 问题出$('a').attr('id')
在获取元素的代码id
中。<a>
因为,有多个<a>
元素,它考虑第一个<a>
元素并采用它的id
. Using$(this)
将获取<a>
被点击元素的范围。您甚至可以this.id
在 click 函数内部使用。
$(document).ready(function(){
$('#test a').click(function(){
var ids=$(this).attr('id');
alert(ids);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="test">
<a class="link" id="check1" href="#">1</a>
<a class="link" id="check2" href="#">2</a>
<a class="link" id="check3" href="#">3</a>
<a class="link" id="check4" href="#">4</a>
<a class="link" id="check5" href="#">5</a>
<a class="link" id="check6" href="#">6</a>
<a class="link" id="check7" href="#">7</a>
</div>
推荐阅读
- java - 我收到警告“未设置容器内存限制。为 1G 容器配置 JVM。” 无论 RAM 大小或 docker 配置
- html - 链接按钮时遇到问题
- python - 如何使用 Flask 将函数的结果返回到网页
- python - 在更大的阵列上训练时的损失变为 inf 然后变为 nan(Tensorflow)
- string - 在 vuejs 中只使字符串的一部分变为粗体
- php - 页面刷新后会话被破坏
- javascript - Bot 不会编辑每个频道的角色权限
- html - 如何使用 *ngFor 从对象角度获取值?
- android - FloatingActionButton 立即隐藏
- javascript - 如何在 javascript/jquery 中暂停音频?