私はmvcを使用しています。ここで作成ビューをポップアップとして入力しています。モデルで指定した検証を取得できますが、コントローラー側に記述された「名前が存在するかどうか」などの検証はポップアップで実行されず、表示されますポップアップを閉じます。
コントローラー側は、次のコードを使用して、ログイン名が存在するかどうかを確認しています
if (db.login.Count(l => l.Name== loginname_create) > 0)
{
ModelState.AddModelError("loginname", "name already exists");
}
jqueryポップアップダイアログコードは
$("#dialog").click(function (e) {
e.preventDefault();
var url = $(this).attr('href');
$("#dialog-create").dialog({
height:300,
width: 400,
show: { effect: 'drop', direction: "up" },
modal: true,
open: function (event, ui) {
$(this).load(url);
//$.validate.unobtrusive.parse("myform");
}, close: function (event, ui) {
$(this).dialog('close');
}
});
$("#dialog-create").dialog('open'); return false;
});
コントローラーで行った検証をポップアップダイアログに表示したいと思います。