页面上的多个Jquery对话框使用相同的类
我的页面上有多个位置,我想在单击链接时打开一个jquery对话框。 我正在使用类选择器,所以理论上我应该能够打开它们。 我的问题是,我所拥有的代码只会打开我点击的第一个对话框。 为什么是这样???
//modal help div $('.dialogbox').dialog({ modal:true, autoOpen: false }); $(".modalhelp").click(function() { $('.dialogbox').dialog('open')
});
html:
Hello NO HELLO
在.click()
处理程序中,您需要相对引用您想要的那个,如下所示:
$(".modalhelp").click(function() { $(this).next('.dialogbox').dialog('open'); });
我们只使用.next()
在下一个兄弟
上调用.dialog('open')
,而不是打开所有.dialogbox
元素。 如果点击的锚点和.dialogbox
之间可能存在元素,那么这会改变一点,例如.nextAll('.dialogbox:first')
。