我目前正在研究一些JS,并遇到了一个有趣的问题。我不确定我在这里做错了什么,因为我认为它没有任何理由不起作用,但我没有得到任何结果。我正在运行以下代码:
$('#am_schedDetailModal').dialog('option', 'buttons', [{
text: 'Delete',
click: function () {
$('#am_confirmationDialog').html('Are you certain you wish to delete this entry?');
$('#am_confirmationDialog').dialog('option', 'buttons', [{
text: 'Yes',
click: function () {
deleteScheduledEntryAt(cellID);
$('#am_schedDetailModal').html('');
$('#am_schedDetailModal').dialog('close');
$('div', this).html('');
$(this).dialog('close');
}
}, {
text: 'No',
click: function () {
$('div', this).html('');
$(this).dialog('close');
}
}]);
$('#am_confirmationDialog').dialog('open');
}
}]);
问题是,当我运行此代码时,第二个对话框不会出现。出现第一个对话框,其他按钮工作正常,但“删除”按钮完全没有效果。没有错误(根据FireBug),但没有任何显示。有什么建议吗?
编辑:感谢Kevin van Hoorn,这似乎是一个非常简单的错误 - 我在代码中创建了第二个对话框,但忘了实际初始化它。
答案 0 :(得分:0)
在尝试使用div之前,你必须将div附加到某个东西上。 像
document.append('<div id="am_confirmationDialog" />');