表单 – 包含表单的ASP.NET MVC3 Html.Action

表单 – 包含表单的ASP.NET MVC3 Html.Action,第1张

概述我的页面上有一个包含表单的窗格. 我以类似于以下方式使用此pod: @Html.Action("Pod","Home") Pod的HttpPost *** 作中有一些业务规则检查,用于处理表单发布.如果此业务规则失败,我会向模型状态添加错误. 问题是,当业务规则无法验证时.我从pod *** 作返回一个View,它只显示空白页面上的pod. 我如何正确地重用这样的表单,并且仍然具有此业务规则的服务器端验证(需要d 我的页面上有一个包含表单的窗格.

我以类似于以下方式使用此pod:

@HTML.Action("Pod","Home")

Pod的httpPost *** 作中有一些业务规则检查,用于处理表单发布.如果此业务规则失败,我会向模型状态添加错误.

问题是,当业务规则无法验证时.我从pod *** 作返回一个VIEw,它只显示空白页面上的pod.

我如何正确地重用这样的表单,并且仍然具有此业务规则的服务器端验证(需要db命中验证)?

解决方法 一种可能性是在Pod partial中AJAX化表单:

<div ID="pod">    @HTML.Action("Pod","Home")</div>

在Pod.csHTML中:

@using (HTML.BeginForm("Pod","Home",FormMethod.Post,new { ID = "podForm" })){    ...}

最后AJAXify它:

$(function() {    $('#podForm').submit(function() {        $.AJAX({            url: this.action,type: this.method,data: $(this).serialize(),success: function(result) {                $('#pod').HTML(result);            }        });    });});

最后要确保的是POST *** 作将Pod.csHTML作为局部视图返回.两种可能性:

[httpPost]public ActionResult Pod(Podviewmodel model){    if (!ModelState.IsValID)    {        return PartialVIEw(model);    }    ...}

或者在Pod.csHTML部分:

@{    Layout = null;}
总结

以上是内存溢出为你收集整理的表单 – 包含表单的ASP.NET MVC3 Html.Action全部内容,希望文章能够帮你解决表单 – 包含表单的ASP.NET MVC3 Html.Action所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1073197.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存