簡體   English   中英

ASP.NET MVC C#動態radiobuttons獲得formcollection

[英]ASP.NET MVC C# dynamic radiobuttons getting formcollection

我有一個表單,其中可以在視圖中動態生成多個單選按鈕,在提交的表單上我如何收集控制器中的值。 例如,有動態生成的單選按鈕,如性別(男性和女性),教育(BS,MS,BCS)。 我怎么能在容器中有價值。

如果您知道單選按鈕的名稱,則可以使用操作參數。 如果名稱是任意的,您可以從傳遞給POST操作的FormCollection參數中獲取值(它是一個NameValueCollection因此您可以遍歷該鍵並獲取相應的值)。

我個人建議您使用確定性名稱:

Gender:
<input type="radio" value="M" name="radios[0]" />
<input type="radio" value="F" name="radios[0]" />

Education:
<input type="radio" value="BS" name="radios[1]" />
<input type="radio" value="MS" name="radios[1]" />
<input type="radio" value="BCS" name="radios[1]" />

在您的控制器操作中,您可以使用集合:

[HttpPost]
public ActionResult Update(string[] radios)
{
    // The radios collection will contain the selected values like:
    // radios[0] = "F"
    // radios[1] = "MS"
    ...
}

唯一的方法是使用表單集合,如果它們是動態生成的單選按鈕。

public ActionResult controllername(FormCollection form)
{
     foreach(string radioName in dynamicRadioList)
     {
           var value = form[radioName];
           //blah blah
     }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM