@freelancer007

Почему .click() выполняется 2 раза?

Всем привет, столкнулся с такой проблемкой, есть ссылка, при клике по которой должен выполниться аякс запрос. Все так и получается, но запрос выполняется 2 раза! Уважаемые гуру JS прошу объяснить в каком месте я накосячил. Заранее спасибо!
<a href="#" id="save_b_v" >SAVE</a>

(function($){
        var prod_id = $('#id_p_v').val();
        var prod_sku = $('#id_s_v').val();
        var prod_name = $('#id_n_v').val();
        var prod_price = $('#id_pr_v').val();
        var skey = $('#skey').val();
        
        $('#save_b_v').one("click",function(){
            if(prod_id === 0 || prod_id < 1 || prod_sku === '' || prod_name === '' || prod_price < 1 ){
                $('#save_b_v').css("disabled","disabled")
                alert('Не заполнены поля');
            }
			else {
					$('#save_b_v').attr("id","");
					$.ajax({
						  url: "/upd/add.php",
						  type: 'POST',
						  async:true,
						  response:'text',
						  data:{'virt_id':prod_id, 'virt_sku':prod_sku, 'virt_name':prod_name, 'virt_eur':prod_price, 'skey':skey},
						  success: function(data){
												if(data === 'ok'){
													alert('OK');
													
													}
													
													else {
														alert(data);
													}
												
												 }
						});
			
				
		
				
			}
        })
        
})(jQuery);
  • Вопрос задан
  • 1151 просмотр
Решения вопроса 1
alsopub
@alsopub
Ваш код работает нормально - https://jsfiddle.net/arLprcgd/1/
Вызывает скрипт 1 раз.
Возможно вы каким-то образом выполняете этот код 2 раза или грузите этот скрипт в двух местах.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
postnov_daniil
@postnov_daniil
Начинающий фронтендер
Пробуйте событие change, а не click
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы