0

我是 jquery ui 对话框的新手。我在我的 MVC 网站中使用了对话框。

我将我的对话框容器放在body标签内的布局页面中,如下所示 -

 <div id="dialogBox"></div>

然后在我的视图页面上,我有 id为 aMyProfile的按钮并编写了用于打开我的对话框的 jquery 代码。

aMyProfile 的 html 代码 -

<input type="button" id="aMyProfile" data-url="@Url.Action("UserProfileContainer","User")" value="View Profile"/>

aMyProfile 的 Jquery 代码-

$('#aMyProfile').click(function () {
            var currentURL = $(this).attr('data-url');
            $('#dialogBox').load(currentURL, function () {
                $('#dialogBox').dialog("open");
            });
        });

和对话框初始化为-

$('#dialogBox').dialog({
        bgiframe: true,
        modal: true,
        autoOpen: false,
        closeOnEscape: false,
        position: 'center',
        resizable: false,
        title: 'Profile',
        width: 750
    });

以上所有jquery代码都在 $(document).ready(function () {});

当我执行我的项目时,它给我的输出是 - 在此处输入图像描述

我的对话框没有出现在窗口的中心。即使我将位置设置为中心。

我不明白我要去哪里错了。

4

2 回答 2

0

我刚刚遇到了同样的问题。检查事项:

确保您的应用程序中有 /Scripts/jquery.ui.position.js,如果没有,请转到此处

http://jqueryui.com/download/并下载它,你会在

\jquery-ui-1.10.4.custom\jquery-ui-1.10.4.custom\development-bundle\ui\jquery.ui.position.js

在 App_Start/BundleConfig.cs 中更改您的 jqueryui 包配置:

bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
                    "~/Scripts/jquery-ui-{version}.js"                     
                    ));

对此:

bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
                    "~/Scripts/jquery-ui-{version}.js",
                    "~/Scripts/jquery.ui.position.js"
                    ));

那应该排序它。

于 2014-05-16T14:10:58.400 回答
0

您指定的位置值错误。它应该是这样的:

position: { my: "center", at: "center", of: window }

在任何情况下,位置的默认值都是中心对齐的,所以只需将其删除。

http://api.jqueryui.com/dialog/#option-position

于 2013-09-05T13:12:28.277 回答