我有这个jqueriUI对话框:
<script>
$(function() {
$( "#dialog" ).dialog({
autoOpen: false,
show: {
effect: "blind",
duration: 1000
},
hide: {
effect: "explode",
duration: 1000
}
});
$( "#opener_0" ).click(function() {
$( "#dialog" ).dialog( "open" );
});
});
</script>
这就是我绘制按钮的方式(更感谢一个对话框):
for (r=0;r<array[i];r++){
$('#list').append('<button id="opener_' + r + '">Open</button>')
}
当我检查按钮时,我看到id是“opener_0”但是当我点击它时它不起作用。 任何的想法? 谢谢!
答案 0 :(得分:0)
javascript的顺序非常重要。如果for循环在click事件绑定之后,则没有要绑定的opener_0
的id,所以什么也没发生。您需要使用附加按钮的for循环,才能绑定click事件。
答案 1 :(得分:0)
试试这个
$(document).on('click', "#opener_0", (function() {
$( "#dialog" ).dialog( "open" );
});
你的循环似乎很奇怪,所以试试这个。
var array = [1,2,3,4];
for (var r = 0; r < array.length; r++) {
$('#list').append('<button id="opener_' + r + '">Open</button>')
}