gpt4 book ai didi

Jquery - 具有不同id的多个元素的相同点击功能

转载 作者:行者123 更新时间:2023-12-01 07:13:46 25 4
gpt4 key购买 nike

除了 id 之外,我有 cca​​ 150 个具有相同名称的元素。我需要将相同的点击功能绑定(bind)到它们。在当前的代码中,以下代码生成了 150 次,但我认为必须有更有效的方法。

重写以下代码最有效的方法是什么?

<script>
var jizda_1 = $('a#jizda_1');
jizda_1.click(function(e) {
e.preventDefault();
id = 1;
$('#jizda_' + cisloJizdy + '.active').removeClass('active');
cisloJizdy = 1;
if ($(this).hasClass('closed')) { // uzavrena jizda
generujPoziceUzavreneJizdy(cisloJizdy);

} else {
generujPoziceOtevreneJizdy(cisloJizdy);
}
$(this).addClass('active');
$('#detailZakaznika').hide();
$('#tiskDokladu').addClass('disabled');
$('#tiskUctenky').addClass('disabled');
});
var jizda_2 = $('a#jizda_2');
jizda_2.click(function(e) {........
});
</script>

最佳答案

我会更改 HTML,以便相关元素共享一个公共(public)类。然后:

$("a.the-class").click(...);

在点击处理程序中,直接使用 this (这将是被点击的元素)(它是 DOM 元素)或将其包装在 jQuery 包装器中 ($(this) ),以引用特定元素。

Live Example | Source

但是您可以使用attribute-starts-with通过其id的公共(public)部分来选择它们选择器:

$('a[id^=jizda_]').click(...);

Live Example | Source

关于Jquery - 具有不同id的多个元素的相同点击功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21954435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com