如何使用jquery隐藏/更新/显示具有相同ID的多个实例
how do i hide/update/show multiple instances with the same ID with jquery?
我有一个jQuery脚本,有人可以在其中单击按钮将此项目添加到他们的收藏夹中。现在,问题是我想在页面上多次添加这个按钮——完全相同的按钮,具有相同的代码。当我点击其中一个按钮时,第一个按钮会更新,但其他按钮不会。有没有办法更新所有匹配的ID?换句话说,除了第一个案例外,对页面上所有匹配的案例运行此操作?
代码如下:
$(document).on('click','#add-to-list',function (e) {
e.preventDefault();
var id = $(this).data("id");
$.ajax({
url: "http://xxx.xxx.xxx.xxx/add_to_list?id=" + id,
type: "GET",
dataType: 'json',
success: function(json) {
if(json.valid == 1) {
$("#list-button").hide();
$("#list-response").html('Added to Favorites');
$("#list-response").show();
}
},
timeout: 10000
});
});
然后在页面上,很明显我有多个实例
<div id="list-button">
(button here)
</div>
<div id="list-response">
(initially hidden)
</div>
id
将只对单个按钮有效,class将对每个按钮有效,因此对于此操作,您必须使用class而不是id,请单击此链接--
什么';jQuery中class和id的区别是什么?
元素的ID必须是唯一的,ID选择器将只获取具有给定ID的第一个元素。
在您的情况下,您可以使用类而不是ID,然后使用遍历方法来针对适当的元素来显示/隐藏
$(document).on('click', '.add-to-list', function (e) {
e.preventDefault();
var $this = $(this);
var id = $this.data("id");
$.ajax({
url: "http://xxx.xxx.xxx.xxx/add_to_list?id=" + id,
type: "GET",
dataType: 'json',
success: function (json) {
if (json.valid == 1) {
$this.closest('.list-button').hide().next().html('Added to Favorites').show();
}
},
timeout: 10000
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="list-button">(button here)</div>
<div class="list-response">(initially hidden)</div>
相关文章:
- 如何在速度模板中获取LiferayPortlet实例id
- 当同一浏览器的两个实例浏览时,Javascript页面如何具有唯一的ID
- 返回实例'for循环中的id
- 使用ID获取AmChart的实例
- ExtJs - 如何在使用多个实例时设置组件的 ID
- 在应用程序中获取多个 ID 实例
- 获取在视图实例中定义的具有特定 ID 的数据
- 使用 DOM 元素的 id 访问插件实例
- CKEditor 一个实例用于多个 ID
- Javascript:当生成id时,需要删除页面上一个类的单个实例
- 未捕获的错误:无法为每个类型实例化多个具有相同id的Backbone.RelationalModel
- 如何使用jquery隐藏/更新/显示具有相同ID的多个实例
- 具有相同ID的字段上的tinyMCE的多个实例
- 创建一个不使用实例id的私有成员
- 从它的实例中获取光滑网格的id
- 在实例化对象(使用构造函数)时设置唯一的id
- 如何在Socket中订阅id以外的属性为真的实例室.io / SailsJS
- 从当前脚本(即thisscript.js?id=1&type=2)的url获取参数,不能与多个实例一起工作
- 为angular指令实例分配自定义的唯一id
- 使用实例删除javascript中基于id的对象