jquery ui 的 dialog,里面如果不用 $.get $.ajax 之类的东西就一切正常,只要用了AJAX, 甚至是.load 之后 dialog就不正常了,不能用外部的按钮关闭,测试.dialog("isOpen")也是返回object.代码如下:
function showSupplierCategory() {
alert($("#supplierCate").dialog("isOpen"));
if ($("#supplierCate").dialog("isOpen") !== true) {
$("#supplierCate").dialog();
$("#supplierCate").html("<p>Loading...</p>");
$("#supplierCate").load('/supplier/index')
}
}
function closeSupplierCategory() {
$("#supplierCate").dialog("close");
}<button onclick="return showSupplierCategory()" >open</button>
<button onclick="closeSupplierCategory()" >close</button>
<div id="supplierCate"></div>经反复测试,只要没有这句:$("#supplierCate").load('/supplier/index')
或者是:$.get('/supplier/index', function (rs) { $("#supplierCate").html(rs); });
就一切正常,在对话框打开的时候alert($("#supplierCate").dialog("isOpen"));是返回的true,也可以用<button onclick="closeSupplierCategory()" >close</button>关闭,如果经过AJAX调用,就不行了,只能用对话框内的小叉关闭,
对话框明明是打开的,$("#supplierCate").dialog("isOpen")却返回[Object Object].
测试了一天不得要领,帮忙看下!谢谢!
function showSupplierCategory() {
alert($("#supplierCate").dialog("isOpen"));
if ($("#supplierCate").dialog("isOpen") !== true) {
$("#supplierCate").dialog();
$("#supplierCate").html("<p>Loading...</p>");
$("#supplierCate").load('/supplier/index')
}
}
function closeSupplierCategory() {
$("#supplierCate").dialog("close");
}<button onclick="return showSupplierCategory()" >open</button>
<button onclick="closeSupplierCategory()" >close</button>
<div id="supplierCate"></div>经反复测试,只要没有这句:$("#supplierCate").load('/supplier/index')
或者是:$.get('/supplier/index', function (rs) { $("#supplierCate").html(rs); });
就一切正常,在对话框打开的时候alert($("#supplierCate").dialog("isOpen"));是返回的true,也可以用<button onclick="closeSupplierCategory()" >close</button>关闭,如果经过AJAX调用,就不行了,只能用对话框内的小叉关闭,
对话框明明是打开的,$("#supplierCate").dialog("isOpen")却返回[Object Object].
测试了一天不得要领,帮忙看下!谢谢!
if ($("#supplierCate").dialog("isOpen") !== true) {
$("#supplierCate").dialog({
title:'myDialog',
autoOpen: true,
resizable:false,
width: 460,
height:350,
open: function(event, ui) {$(this).html("<p>Loading...</p>");$(this).load('/supplier/index')}
});
}
}
function closeSupplierCategory() {$("#supplierCate").dialog("close");}或者按你自己写的:
function showSupplierCategory() {
if ($("#supplierCate").dialog("isOpen") !== true) {
$("#supplierCate").dialog();
$("#supplierCate").html("<p>Loading...</p>");
$("#supplierCate").load('/supplier/index');
}
}在最新版本的jquery下测试均无问题,你如果测试有问题,可将/supplier/index 换成另一个普通的页面试试。比如新建一个load.html,里面写上些文字,再测试下就知道了