代码之家  ›  专栏  ›  技术社区  ›  vijaysylvester

如何从ASP.NET MVC应用程序的一组单选按钮中提取所选元素?

  •  0
  • vijaysylvester  · 技术社区  · 17 年前

    我有两组单选按钮,它们的链接对应于我的ASP.NET MVC应用程序中的每个组。

    下面是屏幕截图,以获得更好的清晰度:

    alt text http://img21.imageshack.us/img21/7959/radiogroups.png

    当我选择适当的链接时,与特定组关联的值应该传递给控制器操作。

    例如,在上述情况下,单击“链接1”时,值A1或A2应传递给控制器操作方法。

    我尝试了向适当的操作方法发布日志,但是与第二个链接关联的值也将被传递。如何仅从单击的链接中获取所选值?

    4 回复  |  直到 13 年前
        1
  •  1
  •   Matthew    17 年前

    我将使用一个javascript函数作为链接的href。它将读取相应单选按钮组的选定值,并将其添加到URL字符串中。您可以设置window.location或设置表单操作并提交。

        2
  •  1
  •   Marc Climent    17 年前

    使用javascript,您可以在提交表单之前清除其他单选按钮的值。

    其他的解决方案可以是拥有一个隐藏字段,并在每次单击链接时使用javascript将其填充为适当的值。然后,您得到这个字段的值,然后忘记使用单选按钮。

        3
  •  0
  •   Darin Dimitrov    17 年前

    将两个单选按钮和关联的链接放在单独的表单中。将链接替换为“提交”按钮(如果希望图像看起来像链接,则替换为“提交图像”)。因此,您将有两个表单都发布到同一个控制器操作。提交按钮A name 可以在操作内部使用它来确定单击了哪个按钮。也可以使用隐藏字段。该操作中要做的第一件事是确定单击了哪个按钮,然后读取相应的单选按钮请求值。

    另一种选择是将所有内容都放在同一个表单中,其中有两个提交按钮和不同的名称。

        4
  •  0
  •   SHAURAJ SINGH    13 年前

    视图

    @model MvcApplication2.Models.CountryModel
    @using (Html.BeginForm())
    {
                @Html.RadioButton("Gender", "Male" new { @checked = "checked" }) Male
                @Html.RadioButton("Gender", "Female")Female
                <input type="submit" text="submit"/>
    }
    

    模型

       public class CountryModel
        {
            public string Gender{ get; set; }
    
        }
    

    控制器

    public ActionResult Index()
    {                    
        return View();
    }
    [HttpPost]
    public ActionResult Index(CountryModel model)
    {
        //for radio button
        CountryModel dd = new CountryModel();
        string date1 = model.RDB;
        return View(model);
    }