在ASP.NET中使用回发​​的jQuery模式对话框

时间:2013-01-31 23:15:17

标签: jquery asp.net jquery-ui jquery-ui-dialog

我刚刚将jQuery / jQuery UI升级到最新版本(jQuery 1.9.0,jQuery UI 1.10.0),它似乎打破了我的一些jQuery UI对话框功能。

为了在ASP.NET中的jQuery UI对话框中进行回发,有一个非常常见的解决方法,你必须将你的DIV重新附加到主FORM,因为jQuery会重新构建FORM之外的DIV ,像这样:

$("#newInsurance").dialog({
    autoOpen: false,
    modal: true,
    open: function (type, data) {
        $(this).parent().appendTo($("form:first"));
    }
});

不幸的是,由于升级现在将Dialog置于灰色/禁用覆盖背后。因此Popup中的表单无法使用并且全部变灰。我已经尝试了几件事情,我似乎无法让它发挥作用 - 似乎这种旧的解决方法不再适用。有谁知道一个新的解决方案将有效吗?或者我错过了什么?这很有效,直到我升级。

以下是有关USED工作的更多信息:

我使用Internet Explorer 9和Google Chrome 24.x进行了测试

According to the jQuery UI website,在jQuery UI 1.10.0中完全重新设计了Dialog API:

1 个答案:

答案 0 :(得分:18)

好的,所以这似乎是jQuery UI v1.10的修复:

$("#newInsurance").dialog({
    autoOpen: false,
    appendTo: "form",
    modal: true
}).parent().css('z-index', '1005');

在jQuery UI v1.10中,他们添加了一个 appendTo 属性,它似乎与调用.parent().appendTo($("form"))完全相同。修复的技巧是z-index。