javascript - 使用 jQuery 获取具有相似 ID 的元素

标签 javascript jquery jquery-dialog

我有带地址的 div-box,每个地址都有自己的按钮,按钮应该会打开一个对话框,您可以在其中编辑特定地址。

按钮 ID 始终是 edit_address_(number),而该数字是数据库的 ID。所以数字不像 1、2、3,但可能是 12、35、122,要显示的对话框具有 id dialog-form_(number)。

那么如何实现一个东西,先获取现有ID的所有尾数,然后为它做循环

$( "#dialog-form_$i" ).dialog({
    autoOpen: false,
    height: 300,
    width: 390,
    modal: true
    });

$('#edit_address_$i').button().click(function() {
    $('#dialog-form_$i').dialog('open');
}); 

我知道这段代码不能那样工作,但如何实现呢?

最佳答案

对于 ID 以“edit_address_”开头的每个元素,绑定(bind)一个点击事件,该事件将通过提取您正在谈论的实际数据库 ID 打开相应的对话框。

$("[id^='edit_address_']").click(function() {
    var id = this.id.split('_')[2];
    $('#dialog-form_' + id).dialog('open');
}).button();

注意:根据元素的类型,您可以在初始选择器前加上标记名,这样速度会更快。例如:“input[id^='edit_address_']”“button[id^='edit_address_']”

关于javascript - 使用 jQuery 获取具有相似 ID 的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9520454/

相关文章:

javascript - 仅从段落文本中隐藏字母

ember.js - Ember、Ember-data 和 jquery-ui.dialog, "Oh my!"

Jquery 对话框 - 标题栏颜色更改

javascript - 这些ajax调用会进一步延迟页面元素吗?

.net - jquery 对话框干扰 .net 输入复选框选中属性 - 始终为 false

javascript - Object.Assign() 函数生成的复制对象有副作用吗?

javascript - angularjs firebase用户身份验证服务不与 View 通信

javascript - 如何在 Firestore 中排列数据以避免用户增加时出现性能问题

javascript - 如何从 C# 代码后面调用本地存储的 javascript 函数

jquery - 游戏 : Keyboard Input Simultaneously (Run & Jump)