【问题标题】:Post value from view to controller asp.net mvc将值从视图发布到控制器 asp.net mvc
【发布时间】:2013-01-19 00:17:18
【问题描述】:

这是我观点的一部分:

<% using (Html.BeginForm())
       { %>
            <input type="checkbox" name="ali" value="123" />
            <%: Html.CheckBox("ali1") %>
                <a href='<%:Url.Action("DeleteSelected", "Product", new { @ShopID = ViewBag.shopIDempty } ) %>'>dddd</a>
                <input type="submit" onclick='<%: Url.Action("DeleteSelected", "Product", new { @ShopID = ViewBag.shopIDempty } ) %>' />
     <%} %>

这是控制器:

        public ActionResult DeleteSelected(FormCollection collection, int ShopID)
    {
        var t = collection.GetValue("ali");
        var t2 = collection["ali"];
        var selectCB11 = collection.GetValue("ali");

        var t1 = collection.GetValue("ali1");
        var t21 = collection["ali1"];
        var selectCB121 = collection.GetValue("ali1");
        //...
    }

但是没有任何东西传递给我的变量,而且它们总是空的。怎么了?

【问题讨论】:

  • onclick 事件处理程序中带有 URL 的提交按钮的目的是什么?
  • 其实我有一些图片在一个页面。用户想要删除其中的一些。用户用复选框选择一些图片。每张图片旁边都有一个复选框。然后必须单击删除按钮。现在我想将选中的复选框发送到删除操作并删除图片。我该怎么做?

标签: asp.net-mvc checkbox


【解决方案1】:

单击链接永远不会回发到服务器,或者从提交按钮重定向客户端也不会导致回发。任何像复选框这样的输入值都不会发送到服务器。您需要使用带有提交按钮的表单,并让提交自然地回传到服务器。

或者,您可以使用 JQuery 的 $.ajax 创建一个 JavaScript post 语句来异步执行此操作,like these examples

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多