【问题标题】:asp.net mvc Getting values from Html.Checkboxasp.net mvc 从 Html.Checkbox 获取值
【发布时间】:2016-08-13 20:58:57
【问题描述】:

我希望能够选择几个框并发送与它们相关的字符串。但问题是我不知道如何在控制器中捕获值。

一个重要的问题是我不想将它绑定到模型!希望您能帮助我找到适合此图像的解决方案

cshtml文件:

@model IEnumerable<WebApplication1.Models.WikiPage>
@using (Html.BeginForm("DeletePages", "Home", FormMethod.Post))
{
 <ul>
    @foreach (var item in @Model)
    {
        <li>
            @Html.CheckBox(item.Title)
            @Html.Label(item.Title)
        </li>
    }
</ul>
<input type="submit" value="Delete pages" />
}

这是控制器中的部分。 String... 将为空,我不知道我应该放什么来捕捉值

    [HttpPost]
    public ActionResult DeletePages(String... Titles)
    {

        removePages(Titles);
        List<WikiPage> pages = db.WikiPages.ToList();

        return View(pages);
    }

希望你能帮助我!

亲切的问候

【问题讨论】:

  • @Html.CheckBox() 用于绑定到bool,而不是字符串。如果您想回发一个字符串数组,则手动生成输入&lt;input type="checkbox" name="titles" value="@item.Title /&gt; 并将方法更改为public ActionResult DeletePages(string[] titles)

标签: c# asp.net-mvc checkbox


【解决方案1】:

查看:

@model IEnumerable<WebApplication1.Models.WikiPage>
@using (Html.BeginForm("DeletePages", "Home", FormMethod.Post))
{
 <ul>
    @foreach (var item in Model)
    {
        <li>
            <label>@item.Title
                <input type="checkbox" name="titles" value="@item.Title />
            </label>
        </li>
    }
</ul>
<input type="submit" value="Delete pages" />
}

控制器:

[HttpPost]
public ActionResult DeletePages(string[] titles)
{
    removePages(titles);
    List<WikiPage> pages = db.WikiPages.ToList();

    return View(pages);
}

【讨论】:

    猜你喜欢
    • 2016-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多