无法通过setTimeout关闭动态创建的jQuery UI对话框。
在jQuery UI中,我们可以使用dialog()
方法动态创建对话框。然而,使用setTimeout
函数来关闭动态创建的对话框是不可行的。这是因为setTimeout
函数是用于在指定的时间后执行一次函数,而对话框的创建和关闭是异步的过程。
要关闭动态创建的jQuery UI对话框,我们可以使用以下方法:
dialog("close")
方法:在创建对话框时,将其存储在一个变量中,然后在需要关闭对话框的地方调用该变量的dialog("close")
方法。例如:var dialog = $("<div>").dialog({
title: "对话框标题",
modal: true,
// 其他配置项
});
// 在需要关闭对话框的地方调用
dialog.dialog("close");
$("#button").on("click", function() {
$("<div>").dialog({
title: "对话框标题",
modal: true,
// 其他配置项
});
});
// 通过事件委托关闭对话框
$(document).on("click", "#button", function() {
$(this).dialog("close");
});
总结:
无法通过setTimeout
关闭动态创建的jQuery UI对话框。我们可以使用dialog("close")
方法或事件委托来关闭对话框。具体的实现方式取决于对话框的创建和关闭的具体场景。
领取专属 10元无门槛券
手把手带您无忧上云