Использование RenderPartial дважды для одного и того же элемента управления mvc view на одной странице - проблемы - PullRequest
0 голосов
/ 03 августа 2010

Я дважды использую одно и то же частичное представление на странице представления create.aspx, часть моего кода: <% Html.RenderPartial ("LocationVerifyControl");%> <% Html.RenderPartial ("LocationVerifyControl");%>

В пользовательских элементах управления mvc view для него есть кнопка и тестовый код: $ ('# btnVerify'). Click (function () {alert ("clicked by btnVerify");}

Я дважды наблюдал всплывающее диалоговое окно с предупреждением, когда нажимали кнопку, на главной странице страницы было содержимое с одинаковыми идентификаторами. Как решить проблемы такого рода?в виде данных и передать их в частичный вид?

1 Ответ

1 голос
/ 03 августа 2010

Если я правильно понимаю ваш вопрос, вы хотите добавить уникальную функциональность для двух разных кнопок с одинаковым идентификатором.

Неверно иметь более одного элемента с одинаковым идентификатором.Если их будет несколько, просто сделайте это классом.Возможно, вы захотите сначала запустить вашу разметку через W3C Validation .

Во-вторых, вы можете сделать это, обернув партиалы в div или любой другой элемент, который вам нравится.Примерно так:

<div id="first">
    <% Html.RenderPartial("LocationVerifyControl"); %>
</div>

<div id="second">
    <% Html.RenderPartial("LocationVerifyControl"); %>
</div>

Тогда ваша секция скрипта может ссылаться на кнопки независимо друг от друга.

$('#first #btnVerify').click(function () {
    alert('first button click');
});

$('#second #btnVerify').click(function () {
    alert('second button click');
});

Обратите внимание, что я просто говорю сначала найти id = затем найти id =btnVerify внутри id = first.

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