2017-01-28 3 views
0

Я просто пытаюсь проверить радиокнопку, чтобы отправить звонок и радиоприемник AJAX с помощью JavaScript.Проверенная радиокнопка отправляет звонок и радиоприемник AJAX

Я попробовал несколько вещей, но не смог получить это право:

for (var i = 0; i < response.split(',').length; i++) { 
    $('#radio_append').append('<input name="suggested_dates" id="suggested_dates'+count+'" value="' + response.split(',')[i] + '" class="styled chal_bhi_radio" type="radio" /><label for="suggested_dates'+count+'">' + response.split(',')[i] + '</label> <br> ') 
    count++; 
} 

После Append этой кнопки радио, есть четыре кнопки радио по нажатию на любой кнопке один радио отправить этот вызов AJAX.

Я пробую несколько вещей, но не работал.

При выборе любого флажка он не отображает окно предупреждения. Эти кнопки переключаются из JavaScript.

enter image description here

$(".chal_bhi_radio").on('change', function() { 
     alert("HI"); 
     var date_al = $(".chal_bhi_radio:checked").val(); 
     $.post("<?php echo $site_root;?>common/service.php?j=4", { 
      date_select: date_al 
     }, 
     function(response) { 
      if (response != '') { 
      per_data = $.parseJSON(response); 
      if (per_data != 0) { 
       $("#price_special_append").html(""); 
       add_basic = per_data; 
       $("#price_special_append").append(" € " + add_basic + " ") 
      } 
      } 
     }); 
+0

Это не дублируется, проверьте код сниппа, спасибо –

+0

Это так. Особенно, если вы сказали «это сработало для меня» на ответ ниже – mplungjan

+0

поверьте мне, это работа для меня и не копировалась из предоставленной ссылки .. –

ответ

2

Вы должны использовать делегирование событий как вновь прилагаемые элементы не будет иметь прослушиватель события привязываться к ним:

Примечание обработчик события присоединен к БЛИЖАЙШЕМУ статическому элементу и мы используем клик. Значение может исходить только от этого радио поэтому нет необходимости сканировать РОМ проверяемых радиостанций, если у вас есть несколько наборов из них

$('#radio_append').on("click", ".chal_bhi_radio",function(){ 
    alert("HI"); 
    var date_al = $(this).val(); 
}); 

делегация События не прикрепляются слушатели событий непосредственно к .chal_bhi_radio. Но вместо этого он привяжет их к другому элементу (здесь document). Поэтому, когда этот элемент будет нажат, он проверяет, соответствует ли целевой элемент селектору (второй аргумент ".chal_bhi_radio"). Подробнее о делегировании событий.

+0

благодарит за свою работу за меня ... –

+0

Почему пользователь пометил мой вопрос как [дубликат] ??? –

+0

@MuhammadAwaisZulifqar Перейдите по ссылке, вы поймете, почему. –