2017-01-28 14 views
0

ラジオボタンをチェックしてみると、JavaScriptを使用してAJAXコールとラジオボタンが追加されます。チェックされたラジオボタンがAJAXコールとラジオボタンを送信する

、私はいくつかのことを試してみたが、この権利を取得することができていない:APPENDこのラジオボタンの後

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++; 
} 

を、いずれかのラジオボタンをクリックして上の4つのラジオボタンは、この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

あなたは、新たに追加要素が、それらに添付イベントリスナーがありませんように、イベントの委任を使用する必要があります。

注意をイベントハンドラは最寄りの静的な要素に取り付けられています。クリックを使用しています。あなたがそれらのより多くのセットを持っていない限り値はONLY

$('#radio_append').on("click", ".chal_bhi_radio",function(){ 
    alert("HI"); 
    var date_al = $(this).val(); 
}); 
このラジオから確認無線のDOMをスキャンするので、必要に来ることはできないイベント委任
.chal_bhi_radioに直接イベントリスナーを添付しません。代わりに、別の要素(ここでは document)にアタッチします。したがって、その要素がクリックされると、ターゲット要素がセレクタ(第2引数 ".chal_bhi_radio")と一致するかどうかがチェックされます。イベント委任の詳細を読む。

+0

私のためにその仕事がありがとう... –

+0

なぜ私の質問に[duplicate]と記されたのですか? –

+0

@MuhammadAwaisZulifqarリンクを参照してください、あなたはその理由を理解するでしょう。 –

関連する問題