ajaxを使って更新している箇所に記述されているid属性やclass属性をトリガーとして、jQuery UIのdialogを表示する方法をご教示いただけたら幸いです。
下記のようにformを使ってビュー(index.cshtml)全体を更新する方式だと①をクリックすることでdialogメッセージを表示することができました。****
@model IEnumerable<hoge.Models.hogeViewModel>
@using (Html.BeginForm("hoge", "hoge"))
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<input id="search" type="button" value="一覧表示" />
</div>
}
// ↓↓Javascriptコード @section scripts { <script type="text/javascript"> $(function() { $("#showDialogDef").dialog({ autoOpen: false, modal: true, buttons: { "閉じる": function () { $(this).dialog('close'); } }, show: { effect: "clip" }, hide: { effect: "clip" } }); $('.showdialog').click(function () { $('#showDialogDef').dialog('open'); }); }) </script> }
上記の<table></table>の範囲を部分ビュー(_ShowList.cshtml)に転記し、Ajaxを使って部分更新する方式に変えたところ
①をクリックしても何も起こらない状況です。
//↓↓index.cshtml
@model IEnumerable<hoge.Models.hogeViewModel>
@using (Ajax.BeginForm("hoge", "hoge", new AjaxOptions {
UpdateTargetId = "result",
}))
{
@Html.AntiForgeryToken()
<button id="Search" type="submit" value="Search">一覧表示</button>
}
<div id="result"></div>
下記コードをindex.cshtmlのjavascriptに追加しました。
$('#search').click(function () { $('#result').load('/hoge/hoge',); });
//↓↓_ShowList.cshtml
@model IEnumerable<GGPediaSystem.Models.SearchResultViewModel>
最終的に展開されるindex.cshtmlにjavascriptやdialog表示内容(<div></div>)が記載されていればよいと思っておりましたが、試しに部分ビュー側(_ShowList.cshtml)にjQueryのインポート、javascriptのコード、dialog表示内容(<div></div>)を書いても状況は変わりませんでした。
Ajaxを使って部分更新させた場合でもdialogメッセージを表示する方法をご教示いただけたら幸いです。
宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/12/24 05:22