我有带地址的 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/