当前位置:  开发笔记 > 后端 > 正文

如何处理ASP.NET MVC中动态生成的表单的输出?

如何解决《如何处理ASP.NETMVC中动态生成的表单的输出?》经验,为你挑选了1个好方法。

假设您使用具有动态数量的表单元素的ASP.NET MVC创建表单.

例如,您需要为每个产品选中一个复选框,并且产品数量会逐日变化.

您如何处理发布回控制器的表单数据?您无法在操作方法上设置参数,因为您不知道将返回多少表单值.



1> Craig Stuntz..:

只需为每个复选框指定唯一的名称值:

" 
 name="<%= "approveCheck" + recordId %>" type="checkbox" />

然后在提交后解析Action中的表单值列表:

foreach (var key in Request.Form.Keys)
    {
        string keyString = key.ToString();
        if (keyString.StartsWith("approveCheck", StringComparison.OrdinalIgnoreCase))
        {
            string recNum = keyString.Substring(12, keyString.Length - 12);

            string approvedKey = Request.Form["approveCheck" + recNum];
            bool approved = !String.IsNullOrEmpty(approvedKey);
            // ...

您不需要将表单值作为参数传递; 你可以从Request.Form中获取它们.

另一个选择:编写模型绑定器以将列表更改为表单提交的自定义类型.

推荐阅读
云聪京初瑞子_617
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有