флажок проверено значение в asp.net MVC2 - PullRequest
0 голосов
/ 02 июня 2011

Я использую следующий синтаксис для создания флажка:

<%: Html.CheckBox("Monday", new { id = "Monday" })%>
                    <label for="Monday">
                        Monday</label>

в виде asp.net MVC2 и когда я пытаюсь включить его в действие контроллера, как это

string Monday = Request["Monday"];

Запрос ["Понедельник"] имеет значение "true, false". почему так? Как я могу получить текущее значение (установлен / снят флажок)

[Изменено]

 <fieldset>
                        <legend>Week days</legend>
                         <%: Html.CheckBox("Monday", new { id = "Monday" })%>
                        <label for="Monday">
                            Monday</label>
                            <%: Html.CheckBox("Tuesday", false, new { id = "Tuesday" })%>
                        <label for="Tuesday">
                            Tuesday</label>
                            <%: Html.CheckBox("Wednesday", false, new { id = "Wednesday" })%>
                        <label for="Wednesday">
                            Wednesday</label>
                            <%: Html.CheckBox("Thrusday", false, new { id = "Thrusday" })%>
                        <label for="Thrusday">
                            Thrusday</label>
                            <%: Html.CheckBox("Friday", false, new { id = "Friday" })%>
                        <label for="Friday">
                            Friday</label>
                            <%: Html.CheckBox("Saturday", false, new { id = "Saturday" })%>
                        <label for="Saturday">
                            Saturday</label>
                            <%: Html.CheckBox("Sunday", false, new { id = "Sunday" })%>
                        <label for="Sunday">
                            Sunday</label>
                     </fieldset>

Пожалуйста, предложите

1 Ответ

0 голосов
/ 02 июня 2011

В вашей ситуации нет особого смысла в использовании HtmlHelper для создания вашего флажка.Было бы проще сделать код самостоятельно:

 <input type="check" id="something" name="monday" checked="checked" />

Тогда вы можете получить доступ к значению, когда будете публиковать, например, так:

 string rawValue = Request.Form["monday"];

В качестве альтернативы, вы можете создать модель представлениясделайте флажок так:

<% Html.CheckBoxFor(x => x.MyBooleanProperty) %>

Кроме того, когда вы используете такой помощник, он на самом деле генерирует для вас идентификатор, поэтому вам не нужно присваивать идентификатор значения (иначе, нет { id = "monday" } необходимо).В вашей ситуации кажется, что вы присвоили одно и то же «имя» одному или нескольким элементам формы, и, таким образом, значения будут объединены вместе с запятой.Я бы проверил, содержит ли ваша страница другой элемент с таким же атрибутом имени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...