с использованием C# MVC 5 вот код моей стороны клиента для Ajax вызова:JQuery Ajax вызываются в 6 раз по одним нажатию кнопки
function addEventListener()
{
//used this as well to unbind the events but didn't work
//$('#createNotification').unbind().bind('click', function (e) {
$('#createNotification').bind('click', function (e) {
if($('#form').valid())
{
$.ajax({
url: '@Url.Action("Create","Notification")',
data: {
Title: $('#notifTitle').val(),
Message: $('#notifContent').val()
},
type:'POST',
success: function(dt)
{
// did not fix the problem
//$('#createNotification').unbind('click');
alert('arash');
}
});
}
});
}
и вот мой .ready код:
$(document).ready(function()
{
$("#form").validate({
rules: {
Title: {
required: true
},
Message: {
required: true
}
}
});
addEventListener();
})
после нажатия на кнопке событие срабатывает 6 раз, и я получаю 6 предупреждений, я искал SO и пробовал много решений, но никто не работал для меня. Я действительно потерялся здесь, потому что вызов должен произойти только один раз, но это не так.
любая помощь будет оценена.
Вы уверены, что document.ready только срабатывает один раз? Не могли бы вы добавить какое-либо предупреждение или войти в функцию addEventListener, чтобы убедиться, что это только регистры? –
@codemonkey Я проверил, и он называется только один раз –
Проверьте, сколько раз вызывается addEventListener. –