zpjchina
2016-11-17 14:14
采纳率: 33.3%
浏览 1.0k

为何jquery ui的弹出对话框无法关闭报错options

最近,我在编写一个对话框的时候,用了jquery ui的对话框,我的截图是这样的:
图片说明

图片说明
当我点击每个大类项下的小分类的时候,例如:
点击“家电”下的“照明”,应该如何写才能关闭这个弹出框呢?
我的代码如下:

 // 打开弹出框
function openPopupWin(/*Int*/windowWidth,/*Int*/ windowHeight,/*String*/actionUrl) {
    var screenWidth = $(document).width();
    var screenHeigth = $(document).height();
    var selector = "#popupWin";
    $(selector).window({
        width : windowWidth,
        height : windowHeight,
        draggable : true,
        resizable : false,
        modal : true,
        shadow : false,
        border : false,
        noheader : true
    });
    $(selector).css("display", "block");
    $(selector).window("open");
    $(selector).window('refresh', ctx + actionUrl);
    window.windowSelector = selector;
    resetPopupWin2(screenWidth,screenHeigth);
}

关闭弹出框

 // 关闭弹出框
function closePopupWin() {
    $("#popupWin").window("close");
    $("#popupWin").html('');
    //up
    $("#popupWin").parent().css("width","");
    $("#popupWin").css("width","");
    $("#popupWin").css("height","");

    acctsArray = [];
}

我在当前的jsp页面里导入了jquery-ui.jsp的文件,但是,却发现报错了,错误如下:
在closePopupWin()的里面,报错$("#popupWin").window("close"); 说cannot read property of "options" undefined.

请高手指教,这个错误怎么修复?如何关闭弹出窗?

谢谢

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 已采纳

    refresh使用ajax加载actionUrl这个地址的,你这个actionUrl地址是不是又包含了jquery,jqueryui的框架了?要把这些去掉,要不会重新加载jquery及ui导致覆盖当前页面的这2个类库,导致原来的对象找不到

    已采纳该答案
    打赏 评论

相关推荐 更多相似问题