多くの投稿を読みましたが、問題を解決できません。
クリック時に追加ボタンがあるビューがあります。部分ビューを表示しています。その部分ビューにはレコードを追加するためのフォームがあり、クライアント側を検証していません。私はjquery検証を使用しており、部分ビューが開いているメインビューにjsファイルを追加しました。
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript"></script>
私の見解:
<div id="Div1">
<a id="lnkAdd">
<div>Add</div>
</a>
</div>
$("#lnkAdd").click(function () {
$.ajax({
url: '@Url.Action("MethodName", "ControllerName")',
type: "POST",
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
}).done(function () {
}).success(function (dv) {
$("#Div1").html(dv);
})
});
コントローラ:
[Authorize]
public PartialViewResult MethodName()
{
return PartialView("_PartialViewName");
}
部分図:
<div id="UsersDiv">
<div class="grid-background" style="border: 1px solid #8dc2f5;">
@using (Html.BeginForm("AddRecord", "ControllerName"))
{
<div class="form-bg" style="border: 0px; margin-top: 0px; width: 966px;">
<div class="form-field-bg">
@Html.LabelFor(m => m.FirstName)
@Html.TextBoxFor(m => m.FirstName, new { @class = "label-class" })
@Html.ValidationMessageFor(m => m.FirstName, "", new { @class = "validation-class" })
</div>
<input type="submit" value="Save" id="btnSaveUsers" name="AddRecord" class="signup-button" />
}