问题描述
我正在使用jira,并且有两个具有相同ID和类的按钮。两者都是提交按钮,一个在顶部,一个在下面,当我使用下面的jquery时,单击时仅捕获第一个。目的是使测试字段成为必填项。
只有前一个在工作。.
<script>
AJS.toInit(function () {
AJS.$("#next").click(function(e){
var comment=AJS.$("#jira #page #content .aui-page-panel .aui-page-panel-inner .aui-page-panel-content #bulkedit .form-body .aui .comment-input #comment").val();
if(comment==""){
AJS.$(".bulk-affects").append("<br/><div id='resErrror' style='color:red;margin-left:30px'>Comment is mandatory</div>");
return false;
}
});
});
</script>
请帮助我捕获同时适用于此脚本的下一个按钮
解决方法
ID应该是唯一的,因此您只能在页面上使用一次特定的ID。实际上,当您尝试使用ID代码调用元素时,只会调用第一个元素。类可以重复使用
, querySelectorAll
将找到所有ID
const allButtons = document.querySelectorAll('#next');
for (let button of allButtons) {
$(button).click((e) => {
// Do your magic here
})
}
,
记住:网页元素具有某些不可剥夺的权利;具有唯一ID就是其中之一。通过确保网页上每个需要ID的元素都有一个唯一的元素,来防止html元素身份盗用。
但是班级可以重复。