jquery按钮点击不工作,使用django模板渲染



我有多个按钮在同一页相同的id所以基本上在具有相同id的for循环中呈现。我设置了一个点击事件处理程序Jquery,但它只触发第一个按钮。

你能建议一下吗?

您可以在控制台中看到错误,这可能是因为所有按钮的ID相同。一种解决方案是将索引附加到按钮id字符串,以便每个按钮都有唯一的id(btn1, btn2等),或者使用类代替id。

重复的id会导致HTML无效。Javascript(和jQuery)假设只有一个id,因此:

$("#yourid")

将不再搜索id。

你可以通过

转移话题
$("[id=yourid]")

将找到所有元素,但这是不可取的,因为这样你的HTML仍然是无效的。更好的方法是将id更改为class,然后将其用作选择器。

编辑在jQuery中,你可以像这样创建一个点击事件:

$("[id=saveFavorite]").click(function() {/*...*/})

但是,即使这将工作,我建议重构你的代码,改变你的HTML通过替换每个id="saveFavorite"class="saveFavorite",这样做:

$(".saveFavorite").click(function() {/*...*/})

最新更新