Jquery ui 无法一次又一次地打开Jquery模式对话框
我在页面的页脚有一个超链接,它在jquery对话框中打开一个表单,我们称之为M1。然后我输入所有信息并单击“创建”创建一个用户。在创建一个新用户时,我显示了一个小模式(“我们称之为M2”),上面写着“请稍候..一些消息” 现在我的问题是,我无法显示(“M2”)模式,即“请稍候..一些消息”,而每次我停留(“M1”)时,我都会继续创建一个新用户。 它第一次出现(“M1”),下一次不再显示。如何关闭iam销毁和删除对话框。(由于其他问题) 这是代码Jquery ui 无法一次又一次地打开Jquery模式对话框,jquery-ui,jquery,Jquery Ui,Jquery,我在页面的页脚有一个超链接,它在jquery对话框中打开一个表单,我们称之为M1。然后我输入所有信息并单击“创建”创建一个用户。在创建一个新用户时,我显示了一个小模式(“我们称之为M2”),上面写着“请稍候..一些消息” 现在我的问题是,我无法显示(“M2”)模式,即“请稍候..一些消息”,而每次我停留(“M1”)时,我都会继续创建一个新用户。 它第一次出现(“M1”),下一次不再显示。如何关闭iam销毁和删除对话框。(由于其他问题) 这是代码 <div id="m2" style="vi
<div id="m2" style="visibility:hidden">
<img src="spinningwheel" border="0" align="middle" hspace="20" vspace="5"/> Creating USER...
</div>
$(document).ready(function() {
displaydialog();
});
function displaydialog(){
$('#m2').dialog({
autoOpen: false,
height: 100,
width: 250,
modal: true,
close: function() {
$(this).dialog('destroy');
$(this).remove();
}
});
}
$("#btncreate").click(function (){
$("#m2").removeAttr('style');
displaydialog();
$("#m2").dialog('open');
//get a json request based on data if suceess
if(success){
$("#m2").dialog('close');
}else{
$("#m2").dialog('close');
}
});
正在创建用户。。。
$(文档).ready(函数(){
显示对话框();
});
函数displaydialog(){
$('#m2')。对话框({
自动打开:错误,
身高:100,
宽度:250,
莫代尔:是的,
关闭:函数(){
$(this.dialog('destroy');
$(this.remove();
}
});
}
$(“#btncreate”)。单击(函数(){
$(“#m2”).removeAttr('style');
显示对话框();
$(“#m2”)。对话框(“打开”);
//如果成功,则基于数据获取json请求
如果(成功){
$(“#m2”)。对话框(“关闭”);
}否则{
$(“#m2”)。对话框(“关闭”);
}
});
如果您使用ajax检索新数据,浏览器将再次呈现web(不加载,呈现),这样您就不会再准备dom了。尝试调用displaydialog,然后打开它。它会起作用的。无论如何,有一个更好的方法,我认为你的问题在于逻辑。但是这个解决方案会起作用。如果您使用ajax检索新数据,浏览器将再次呈现web(不加载,呈现),这样您就不会再准备dom了。尝试调用displaydialog,然后打开它。它会起作用的。无论如何,有一个更好的方法,我认为你的问题在于逻辑。但这个解决方案会奏效。@Derby
$(document).ready(function() {
displaydialog();
});
function displaydialog(){
$('#m2').dialog({
autoOpen: false,
height: 100,
width: 250,
modal: true,
/* close: function() { // No need to Destroy the dialog
$(this).dialog('destroy');
$(this).remove();
}*/
});
}
$("#btncreate").click(function (){
// $("#m2").removeAttr('style');
// displaydialog();
$("#m2").dialog('open');
//get a json request based on data if suceess
// if you are using ajax post, try to close this box as part of response handler ( success/error).
jQuery.ajax({
data : {somekey : somevalue},
datatype: 'json',
error : function(jqXHR, textStatus, errorThrown) {
$("#m2").dialog('close');
},
success : function(data, textStatus, jqXHR) {
$("#m2").dialog('close');
},
type : 'GET',
url : 'dummyURL'
});
/* if(success){
$("#m2").dialog('close');
}else{
$("#m2").dialog('close');
} */
});
你不必每次都破坏和创建M2对话框。只需在文档就绪时调用displaydialog(),然后在对话框上使用open和close。您没有看到该对话框,因为在调用ajax get请求(如果您使用的是async:true)之后,将调用dialog(close)。因此,关闭关于ajax请求成功/错误的M2对话框。@Derby
$(document).ready(function() {
displaydialog();
});
function displaydialog(){
$('#m2').dialog({
autoOpen: false,
height: 100,
width: 250,
modal: true,
/* close: function() { // No need to Destroy the dialog
$(this).dialog('destroy');
$(this).remove();
}*/
});
}
$("#btncreate").click(function (){
// $("#m2").removeAttr('style');
// displaydialog();
$("#m2").dialog('open');
//get a json request based on data if suceess
// if you are using ajax post, try to close this box as part of response handler ( success/error).
jQuery.ajax({
data : {somekey : somevalue},
datatype: 'json',
error : function(jqXHR, textStatus, errorThrown) {
$("#m2").dialog('close');
},
success : function(data, textStatus, jqXHR) {
$("#m2").dialog('close');
},
type : 'GET',
url : 'dummyURL'
});
/* if(success){
$("#m2").dialog('close');
}else{
$("#m2").dialog('close');
} */
});
你不必每次都破坏和创建M2对话框。只需在文档就绪时调用displaydialog(),然后在对话框上使用open和close。您没有看到该对话框,因为在调用ajax get请求(如果您使用的是async:true)之后,将调用dialog(close)。因此,在ajax请求成功/错误时关闭M2对话框