[英]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.