Почему мой первый переключатель не проверяется? - PullRequest
1 голос
/ 26 мая 2009

Я получил следующий HTML:

<div class="horizontalRadio">
    <label for="SearchBag.DisplayTypeChips" id="DisplayTypeChipsLabel">
        <%=ViewData.Model.T9nProvider.TranslateById("CommonWeb.Chips")%>
    </label>
    <%=Html.RadioButton("displayType", DisplayTypes.Chip,
        Model.DisplayType.Equals(DisplayTypes.Chip.ToString(), StringComparison.InvariantCultureIgnoreCase),
        new { @id = "SearchBag.DisplayTypeChips" })%>
</div>
<div class="horizontalRadio">
    <label for="SearchBag.DisplayTypeGrid" id="DisplayTypeGridLabel">
        <%=ViewData.Model.T9nProvider.TranslateById("CommonWeb.Grid")%>
    </label>
    <%=Html.RadioButton("displayType", DisplayTypes.Grid,
       Model.DisplayType.Equals(DisplayTypes.Grid.ToString(), StringComparison.InvariantCultureIgnoreCase),
        new { @id = "SearchBag.DisplayTypeGrid" })%>
</div>

Всякий раз, когда Model.DisplayType является "сеткой", все в порядке; вторая кнопка отмечена.
Когда значение «чип», ничего не проверяется. В отладчике я вижу, что Model.DisplayType.Equals(DisplayTypes.Chip.ToString()) верно. Когда я меняю название кнопок на что-то другое, оно тоже работает.
Бывает, я не хочу менять имя, потому что это имя имеет смысл. Это имя я использую в своем приложении ...

Есть идеи, ПОЧЕМУ это имя злое?

1 Ответ

2 голосов
/ 26 мая 2009

В ASP.NET MVC существует проблема, связанная с наличием в вашей модели свойства с тем же именем, что и имя «сгруппированного» элемента (например, селект или радиогруппа).

Подробнее см. http://weblogs.asp.net/ashicmahtab/archive/2009/03/27/asp-net-mvc-html-dropdownlist-and-selected-value.aspx.

Может быть, стоит попробовать.

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