Повторяющиеся события из Jquery при загрузке частичных представлений - PullRequest
0 голосов
/ 02 октября 2019

У меня есть таблица с кнопкой для каждой строки, каждая кнопка может получить одно и то же частичное представление с разными объектами одной и той же модели, и я вставляю HTML в Div, у частичного просмотра есть событие Jquery on click.

Что-то вродеthis

<div id="MyDiv">
</div>
<script>
funtion InserthtmlToDiv(){
//data (partialView html) from ajax
$('#MyDiv').html(data);
}
</script>

PartialViewCode

<div>
My html
<button  type="button" id="MyButton">ShowAlert</button>
</div>
<script>
$('#MyButton').on("click", function (e) {
    alert('@Model.ID');
});
</script>

Каждый раз, когда я получаю частичное представление, событие щелчка MyButton похоже на «сохраненное», даже заменяя HTML MyDiv, поэтому, когда я нажимаю наКнопка Я могу получить N номеров предупреждений на каждый загруженный PartalViews.

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

Примечания: у меня несколько событий с одной и той же проблемой, как это, это пример. У меня есть только одна кнопка с Id = "MyButton". Элемент div «MyDiv» не находится в частичном представлении, каждый раз, когда загружается частичное представление, прослушиватель событий «MyDiv» добавляет событие click.

...