ASP.net MVC 3 Unobtrusive Client Validations をアプリケーションに実装しようとしたとき、レンダリングされた html は、JQuery によって生成されるスパン タグを生成しませんでした。
次のレンダリング html しか取得できず、JQuery モーダル ポップアップを部分ビューのコンテナーとして使用しました。
<input data-val="true" data-val-required="The City field is required." id="City" name="City" type="text" value="Seattle" />
ただし、JQuery Modal ポップアップなしで控えめなクライアント検証を使用すると、同じアプリケーションで次のように正しく動作します。
<div class="editor-field">
<input data-val="true" data-val-required="The City field is required." id="City" name="City" type="text" value="Seattle" />
<span class="field-validation-valid" data-valmsg-for="City" data-valmsg-replace="true"></span>
</div>
JQuery Modal Popup で控えめなクライアント検証を使用するときに実装する必要があるものはありますか?
JQuery ポップアップ コード
$(document).ready(function () {
$('#actionPanelDialogs div').dialog({
autoOpen: false,
modal: true,
width: 700,
appendToBody: true
});
$('#actions a').click(function (event) {
event.stopPropagation();
event.preventDefault();
var link = $(this);
var action = link.attr('href');
var dialogDivId = link.attr('rel');
var dialogDiv = $('#' + dialogDivId);
$.get(action, null, function (data) {
dialogDiv.html(data);
dialogDiv.dialog('open');
});
return false;
});
});