この問題に関連するここの投稿のほとんどを読みましたが、何が問題なのかまだわかりません。誰かルックスをお願いできますか?その行をコメントアウトすると、「未定義のプロパティ「オプション」を読み取れません」というエラーが表示されます。すべての検証コードをフォームから取り出すと、ポップアップして正常に動作しますが、もちろん検証はありません。また、「#updateDialog」の代わりに「#updateContactForm」を入れてみましたが、同じ結果が得られました。これが単純なことで、長い間見ているだけではわからないことを願っています。前もって感謝します!
<div id="updateDialog" title="Update Contact"></div>
<script type="text/javascript">
var linkObj;
$(function () {
$(".editLink").button();
$("#updateDialog").dialog({
autoOpen: false,
width: 400,
resizable: false,
modal: true,
buttons: {
"Update": function () {
$("#update-message").html(''); //make sure there is nothing on the message before we continue
$("#updateContactForm").submit();
},
"Cancel": function () {
$(this).dialog("close");
}
}
});
$(".editLink").click(function () {
//change the title of the dialog
linkObj = $(this);
var dialogDiv = $("#updateDialog");
var viewUrl = linkObj.attr('href');
$.get(viewUrl, function (data) {
dialogDiv.html(data);
//validation
var $form = $("#updateContactForm");
$form.unbind();
$form.data("validator", null);
$.validator.unobtrusive.parse($("#updateDialog"));
// Re add validation with changes
$form.validate($form.data("unobtrusiveValidation").options);
//open dialog
dialogDiv.dialog("open");
});
return false;
});