我使用jquery 2.1.4和UI 1.11.4。我用以下命令加载一个对话框:
$(document).ready( function() {
$("#dialog-form").dialog({
autoOpen: false,
modal: true,
width: 750,
height: 450,
show: {
effect: "blind",
duration: 1000
},
hide: {
effect: "blind",
duration: 1000
},
buttons: {
"Cancel": function () {
$(this).dialog("close"); /* fires an error */
}
}
});
$(".bookingcancel").on("click", function(e) {
e.preventDefault();
$("#dialog-form").dialog("option", "title", "Gestion de votre planning").dialog("open");
$("#dialog-form").load(this.href);
});
});
我有id的链接(即: loda-data.php?id=1 /loda-data.php?id=2...)当我单击时,对话框打开得很好,页面在对话框窗口中加载。
当我点击右上角的"close“十字时,它就会关闭(没有错误)。当我点击"Cancel“按钮时,对话框不会关闭,并且我得到一个错误: TypeError:$(...).dialog is not a function $(this).dialog(" close ");
我在各处找到了很多话题,但没有一个是有效的……
当我打开然后关闭对话框时,我也有一个问题:当我单击另一个链接时,它不会再次打开。
有什么线索吗?谢谢。
编辑:这是我用来打开,然后加载数据,然后需要关闭,然后需要再次打开另一个数据< div id=“对话框-表单”title=“>< /div >的代码
发布于 2016-04-21 16:30:37
在使用.load()
将页面加载到对话框中时,请确保以下几点:
#1:确保你正在加载的页面没有<html></html>
标签。重复的标签会导致DOM中出现问题
#2:确保你正在加载的页面没有重复的库引用。例如: jQuery、jQueryUI、bootstrap等。对外部文件的重复引用也会导致许多问题。
https://stackoverflow.com/questions/36775506
复制