Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 数据模型结果中的MVC3必填字段为DIV_Asp.net Mvc_Asp.net Mvc 3_Jquery - Fatal编程技术网

Asp.net mvc 数据模型结果中的MVC3必填字段为DIV

Asp.net mvc 数据模型结果中的MVC3必填字段为DIV,asp.net-mvc,asp.net-mvc-3,jquery,Asp.net Mvc,Asp.net Mvc 3,Jquery,我希望将包含字段的视图设置为 1) 确保满足所有必填字段 2) 执行ajax调用并将结果发布回同一页面上的DIV标记 我试过几种方法 带有div的updateTargetId的Ajax.Beginform 但是,我有一个现有的操作,它在post上检查一些已发布的字段,如果这些字段满足要求,则将重定向到另一个操作。 这让我很伤心,因为这将是一个不同的观点 使用jQuery和$('form').submit,检查valid()并发布。。这就成功了。。。(结果进入同一页的DIV)但随后所需字段未

我希望将包含字段的视图设置为

1) 确保满足所有必填字段

2) 执行ajax调用并将结果发布回同一页面上的DIV标记

我试过几种方法

  • 带有div的updateTargetId的Ajax.Beginform
但是,我有一个现有的操作,它在post上检查一些已发布的字段,如果这些字段满足要求,则将重定向到另一个操作。 这让我很伤心,因为这将是一个不同的观点

  • 使用jQuery和$('form').submit,检查valid()并发布。。这就成功了。。。(结果进入同一页的DIV)但随后所需字段未被检查。它一直认为valid()是真的
有人能给我一个很好的方法来完成这个任务吗?

你的第一个问题

1)确保满足所有必填字段。

为了

2)执行ajax调用,并将结果发布回同一页面上的DIV标记中

Ajax调用

var url = '@Url.Action("GetData")';
$.ajax({
url: url,
type: 'GET',
cache: false,
data: { value: strId},

success: function (result) {
$('#result).html(result);
}
});
行动

public ActionResult GetData(string id)
{
return Json(new {foo="bar", ball="dragon"});
}

如果删除ajax调用(第二种方法),是否会触发验证?您是否预先填充了字段?当我使用有效的()调用jquery ajax时。。它似乎没有触发我在jquery代码中定义的必填字段。我正在将3个下拉列表设置为“选择一个项目”的值,但有一个金额字段我没有,当我没有在那里输入内容时,它没有停止。但是,我尝试的模型上所需的DataAnnotation没有。。。但是当我把jquery放回原位时。。我想它会覆盖它。好吧,如果我想对表单提交执行这个ajax调用。。这是怎么回事。当我尝试使用$('form').submit()时,它似乎覆盖了使用数据注释定义的视图。我仍然无法让它执行任何操作,只能显示新视图,而不是将其放入div。我知道我一定做错了什么,但我看不到它。如果您可以在不查看代码的情况下提供帮助,或提出建议,请执行。不过,我稍后会发布代码。dataAnnotations正在工作。。ajax调用否。它一直在屏幕上显示缺少字段的错误,但一直允许表单操作继续,即使使用preventdefault,ReturnFalse,也无所谓。我终于退了回来,用双桨划船。。。将输入类型更改为按钮。我自己做了验证fcn和ajax调用。然后它成功了。不涉及数据注释。