MVC获取Basic RadioButton通过表单集合检查属性

时间:2011-08-03 04:47:45

标签: c# asp.net-mvc razor

在我看来有这个代码。通常的无线电列表代码没有帮助

        <br /><input type="radio" name="radioFree" id="radioFree" value="Free" checked="checked"  />
        <br /><input type="radio" name="radioDiscount" id="radioDiscount" value="Discount" />

然后在控制器中,我有

     public ActionResult Create(FormCollection collection)
     {
         return View();
     }

如何使用表单检查哪个收音机?收藏[“radioFree”]只给了我收音机的价值。谢谢 。

由作者解决

在视图中使用帮助程序

    <br />@Html.RadioButton("DiscountType", "Free")
    <br />@Html.RadioButton("DiscountType", "Discount")

然后确定从集合返回的值助手。

1 个答案:

答案 0 :(得分:2)

您应该为两个单选按钮指定相同的名称(表单名称 - ID可以不同),然后使用值提供程序或直接绑定。理想情况下,您希望将无线电组映射到一个值。

<input type="radio" name="radioValue" id="radioFree" value="Free" checked="checked"  />            
<input type="radio" name="radioValue" id="radioDiscount" value="Discount" />

结合:

public ActionResult Index(string radioValue)
{
  if(radioValue == "Free")
  {

  }
  else id(radioValue == "Discount")
  {

  }
}

你也可以这样做:

string radioValue = null;
var valueResult = ValueProvider.GetValue("radioValue");
if (valueResult != null)
{
  radioValue = valueResult.AttemptedValue;
}