以下のようなプロパティを持つクラス Question があります。
[Required]
public string Subject { get; set; }
[Required]
public string Content { get; set; }
サーバーの検証を試みます。これらのスクリプトを含めました:
<script src="@Links.Scripts.jquery_validate_min_js" type="text/javascript"></script>
<script src="@Links.Scripts.jquery_validate_unobtrusive_min_js" type="text/javascript"></script>
これが「作成」ビューです。
<dt><span>Question title*</span>please be specific but brief</dt>
<dd>@Html.TextBoxFor(m => m.Subject, new { @class = "boxsizingBorder" }) @Html.ValidationMessageFor(m=>m.Subject)</dd>
<dt><span>Question details</span></dt>
<dd>@Html.TextAreaFor(m => m.Content, 7, 30, new { @class = "boxsizingBorder" })@Html.ValidationMessageFor(m => m.Content)</dd>
そのような新しい質問を投稿しようとすると:
$('#saveChanges').click(function () {
$('#createQuestion').submit();
});
(#saveChanges
は私のスパン#createQuestion
の ID であり、私のフォームの ID です)
件名フィールドの例を入力しないと、一時的にエラー メッセージが表示されます (フィールドは必須です) が、とにかく質問が投稿されます。これは、jQuery を使用してフォームを投稿しようとしているために発生していますか?
この場合、サーバー検証はどのように機能する必要がありますか?