ASP.NET MVC 表单提交数组和泛型集合的方法

ASP.NET MVC 表单提交数组和泛型集合的方法

2014-06-27 十有三 0 浏览:4187 .NET技术 ASP.NET MVC

在ASP.NET MVC的网站项目中,一般表单提交都是提交单个字段,很少提交数组和集合形式的数据。本文介绍在ASP.NET MVC中,表单提交数组和泛型集合的方法。

在以往HTML中,提交form表单的数据都是根据输入控件的name属性来作为提交数据的命名区分,一个提交的数据字段对应一个name命名。在ASP.NET MVC中,我们可以获取表单中所提交的数组和泛型集合形式的数据,只要将表单中输入控件的name属性都设置一样,这样就可以提交数组和集合形式的数据。

这里建立一个测试项目来作为范例,使用VS2013建立一个MVC项目后,在默认Home控制器的Index视图模板中添加表单提交的代码。前台View视图代码如下(这里提交两组数据,一组是网址列表和备注信息列表,提交到ShowSubmitDate这个活动中):

@using (Html.BeginForm("ShowSubmitData", "Home"))
{ 
    <div>
        <h3>网址列表(数组获取提交数据,name=Urls)</h3>
        <ul>
            <li><input type="text" name="Urls" value="http://shiyousan.com" /></li>
            <li><input type="text" name="Urls" value="http://shiyousan.com/sitemap.xml" /></li>
            <li><input type="text" name="Urls" value="http://siyousan.com/p1" /></li>
            <li><input type="text" name="Urls" value="http://siyousan.com/p2" /></li>
            <li><input type="text" name="Urls" value="http://siyousan.com/p3" /></li>
        </ul>
        <hr />
        <h3>备注信息列表(泛型集合获取提交数据,name=Remarks)</h3>
        <ul>
            <li><input type="text" name="Remarks" value="备注1:11111" /></li>
            <li><input type="text" name="Remarks" value="备注2:22222" /></li>
            <li><input type="text" name="Remarks" value="备注3:33333" /></li>            
        </ul>
        <br />
        <input type="submit" value="表单提交数据"/>
    </div>
}

我们在后台建立一个ShowSubmitDate活动,建立好后再建立ShowSubmitDate的View(空的视图模板就可以)。后台控制器代码如下:

        /// <summary>
        /// 显示提交的数据
        /// </summary>
        /// <param name="Urls"></param>
        /// <param name="Remarks"></param>
        /// <returns></returns>
        public ActionResult ShowSubmitData(string[] Urls, List<string> Remarks)
        {
            foreach (string url in Urls)
            {
                Response.Write(url);
                Response.Write("<hr/>");
            }
            foreach (string reamrk in Remarks)
            {
                Response.Write(reamrk);
                Response.Write("<hr/>");
            }
            return View();
        }

这里我们可以看到在ShowSubmitDate活动中,我们可以获取表单提交的数组和泛型集合数据。这里我们使用Response.Write将获取到的数据显示在界面上。要注意的是:活动中的方法参数名称要和表单中输入控件的name属性一致,这样才能正确获取表单提交上来的数组和泛型集合数据。

最终显示界面和结果如下:

1、默认Home控制器中的Index视图

MVC表单提交数组界面截图

2、提交表单后ShowSubmitDate视图显示的内容

ASP.NET MVC 提交数组表单的演示结果


©️2020 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值