Проверка на стороне клиента Asp.Net MVC2 и проблема дублированного идентификатора

Я использую MVC2 с VS2010

У меня есть представление, в котором есть два частичных представления: "Логин" и "Регистрация"

оба частичных представления содержат поле адреса электронной почты. Я использую следующее в обоих частичных представлениях:

<%: Html.TextBoxFor(model => model.EmailAddress ) %><br /><%: Html.ValidationMessageFor(model => model.EmailAddress) %>

если я использую оба частичных представления на одной странице, это приводит к дублированию идентификатора, поэтому проверка происходит в обоих представлениях (даже если они находятся в отдельных формах)

Как я могу пойти на устранение этого

1 ответ

Решение

Для некоторых элементов управления вы можете указать атрибуты HTML в перегрузке следующим образом:

<%: Html.TextBoxFor(model => model.EmailAddress, new { id = 'my-unique-id" }) %>
<br />
<%: Html.ValidationMessageFor(model => model.EmailAddress, new { id = 'my-unique-id" }) %>

Вы также можете либо написать свой HTML-код вручную, либо использовать более старые HTML-помощники, чтобы таким образом добавить свой собственный идентификатор (это необходимо сделать для Html.LabelFor() хелперы)

<%: Html.TextBox( "EmailAddress", Model.EmailAddress, new { id = 'my-unique-id" } ) %>
Другие вопросы по тегам