尽管asp.NETMVC4验证失败,jQueryPost仍然会通过
我想要一个asp.NETMVC表单发布到控制器,并显示一条关于错误或成功的消息,所有这些都使用jquery。我希望只有在表单验证成功的情况下才能发布jquery帖子。在发送到服务器之前,验证应该在客户端进行。问题是,即使表单验证失败,post也会发生。看起来整个表单都在发回,但我不能确定。我在mvc框架中使用数据注释进行验证。这是密码 看法 模型尽管asp.NETMVC4验证失败,jQueryPost仍然会通过,asp.net,asp.net-mvc,jquery,asp.net-mvc-4,Asp.net,Asp.net Mvc,Jquery,Asp.net Mvc 4,我想要一个asp.NETMVC表单发布到控制器,并显示一条关于错误或成功的消息,所有这些都使用jquery。我希望只有在表单验证成功的情况下才能发布jquery帖子。在发送到服务器之前,验证应该在客户端进行。问题是,即使表单验证失败,post也会发生。看起来整个表单都在发回,但我不能确定。我在mvc框架中使用数据注释进行验证。这是密码 看法 模型 这是因为当您按“提交的输入类型”时,表单仍将提交,只需尝试向jquery函数添加return false $('#FormPost').submit(
这是因为当您按“提交的输入类型”时,表单仍将提交,只需尝试向jquery函数添加return false
$('#FormPost').submit(function (e) {
var validated = $("#FormPost").valid();
if(validated)
{
$.ajax({
type: 'POST',
url: $('#FormPost').attr('action'),
data: $('#FormPost').serialize(),
accept: 'application/json',
error: function (xhr, status, error) {
alert('error: ' + xhr.responseText + '-' + error);
},
success: function (response) {
alert('resp: ' + response);
}
});
}
return false;
});
将这行代码添加到控制器
if (ModelState.IsValid)
{
...
}
else
{
ModelState.AddModelError("key", "messege");
}
这是因为当您按“提交的输入类型”时,表单仍将提交,只需尝试向jquery函数添加return false
$('#FormPost').submit(function (e) {
var validated = $("#FormPost").valid();
if(validated)
{
$.ajax({
type: 'POST',
url: $('#FormPost').attr('action'),
data: $('#FormPost').serialize(),
accept: 'application/json',
error: function (xhr, status, error) {
alert('error: ' + xhr.responseText + '-' + error);
},
success: function (response) {
alert('resp: ' + response);
}
});
}
return false;
});
将这行代码添加到控制器
if (ModelState.IsValid)
{
...
}
else
{
ModelState.AddModelError("key", "messege");
}
请共享带有数据批注的模型代码。添加了模型类请共享带有数据批注的模型代码。添加的模型类仍应在服务器端验证。是。是否可以在服务器上验证它?看起来不是。但仍应在服务器端验证。是。是否可以在服务器上验证它?看起来不是。
if (ModelState.IsValid)
{
...
}
else
{
ModelState.AddModelError("key", "messege");
}