#asp.net-mvc #checkboxfor
#asp.net-mvc #checkboxfor
Вопрос:
У меня есть цикл, который генерирует список элементов с флажком для выбора
foreach(var i in item)
{
@Html.CheckBoxFor(x=>i.Checked)
@Html.labelfor(x=>i.price)
}
У меня есть 3 элемента. итак, это приводит к созданию кода ниже три раза
<input id="paid" name="paid" value="true" type="checkbox">
<input name="paid" value="false" type="hidden">
Теперь, когда я пытаюсь получить доступ к проверенным ценам в моем контроллере
string[] paid = Request.Form["paid"].split(',');
Я должен получить 3 значения true / false, независимо от того, сколько цен было проверено пользователем
Вместо этого он возвращает 3 столько, сколько проверил пользователь. Допустим, если пользователь проверяет одну цену, то в моем контроллере. Я получу 3 1 = 4 значения true / false.
Как я могу избавиться от этой проблемы?
Комментарии:
1. Все, чего я пытаюсь достичь, это: если пользователь проверяет первую цену в списке из 3 цен. Я хотел бы получить доступ к этой цене в контроллере.
Ответ №1:
Я думаю, что вы ищете этот пост. http://forums.asp.net/t/1314753.aspx
Комментарии:
1. в какой-то степени это то же самое. Но ЭТО нечто большее. что мне нужно, так это если мой цикл for отображает 4 флажка, тогда мне нужно только 4 значения true / false для моего контроллера, не более того. Но на данный момент я получил его с дублирующим строковым массивом с ArralyList и if (условием). Я считаю, что это неправильный способ сделать.