0

jquery uiダイアログボックスは初めてです。MVC Web サイトでダイアログ ボックスを使用しました。

次のように、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).read(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 }

いずれにせよ、position のデフォルト値は中央揃えなので、削除するだけです。

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

于 2013-09-05T13:12:28.277 に答える