【发布时间】:2014-08-15 21:49:33
【问题描述】:
我无法在视图上启用验证消息,因为我使用 jquery 提交表单。
任何人都可以对使用 jquery 提交表单进行验证有什么想法吗?
查看
@using (Html.BeginForm("Index", "Sample", FormMethod.Post, new{ id="frmStep1"}))
{
<div class="form-group">
<label>Question 1:<span class="text-danger">*</span></label>
<small class="text-danger">
<i> @Html.ValidationMessageFor(model => model.answer_01)</i>
</small>
<div class="radio">
<label>
@Html.RadioButtonFor(m=>m.answer_01,"2355")Male
</label>
</div>
<div class="radio">
<label>
@Html.RadioButtonFor(m=>m.answer_01,"2355")Male
</label>
</div>
</div>
<button class="btn btn-primary" type="button" id="btnStep1">
<span class="fa fa-arrow-circle-right">
</span> Save
</button>
}
脚本
$("#btnStep1").click(function () {
$.ajax({
url: "../Profile/Question",
type: "POST",
dataType: "json",
data: $("form#frmStep1").serialize(),
success: function(data) {
alert('Ok');
},
fail: function(data) {
console.log('failed to submit.');
}
});
});
控制器
[HttpPost]
public ActionResult Index(SampleViewModel model)
{
return Json("success",JsonRequestBehavior.AllowGet);
}
当用户无法输入某些文本时,我不知道如何启用 ViewModel 上的验证器,请提供一些解决这些解决方案的想法。
【问题讨论】:
-
模型验证在 javascriptvalidations 之后工作。如果您希望您的模型验证工作,那么您必须将输入类型作为提交,或者您必须在提交之前验证 Javascript 中的每个字段
标签: jquery asp.net asp.net-mvc-4 validation