Понимание вспомогательного метода метки, в частности, свойства for для визуализированного HTML - PullRequest
0 голосов
/ 04 июня 2010

У меня строго типизированное частичное представление CheckBox.ascx, которое отображает флажок. Это используется другим частичным представлением, которое отображает список флажков, используя CheckBox.ascx.

У меня возникают проблемы с выяснением того, как использовать вспомогательный метод Html.Label для правильной работы надписей, т. Е. Для свойства label for установить значение id соответствующего флажка.

Моя разметка для этого флажка выглядит следующим образом: (Я использую непоследовательное связывание списка, как описано в Непоследовательные индексы )

<%= Html.CheckBox(string.Format("checkBoxes[{0}].Checked", Model.Id), Model.Checked)%>

Сложность здесь в том, что мой идентификатор флажка будет искажен - [, ], . символов заменены на _.

Может ли вспомогательный метод Html.Label помочь мне здесь?

1 Ответ

0 голосов
/ 30 июня 2010

Мое решение состояло в том, чтобы вручную кодировать элемент label ...

<label for="<%= string.Format("checkBoxes_{0}__Checked", Model.Id)%>"><%= Html.Encode(Model.Label)%></label>

(отмечая, что символы ., [ и ] в имени флажка отображаются в виде подчеркивания)

...