2016-03-19 13 views
0

JavaScriptを変更してnum値に応じてオプションを選択すると、別のアクションが実行されるように修正しようとしています。ここでドロップダウン値に基づくJavaScriptトリガーアクション

が私の現在JavaScriptが次のようになります。

jQuery(".frequency_new_selector").on("change", function() { 
     jQuery('.frequency_new_label option:first-child').attr("disabled", "disabled"); 
     jQuery(".frequency_num").val(jQuery(".frequency_new_selector").find("option[value='" + jQuery(".frequency_new_selector").val() + "']").data("num")); 
     jQuery(".frequency_type").val(jQuery(".frequency_new_selector").find("option[value='" + jQuery(".frequency_new_selector").val() + "']").data("type")); 
     jQuery(".frequency_type_text").attr("value", jQuery(".frequency_type option[value='" + jQuery(".frequency_type").val() + "']").text()); 
     if (jQuery(".frequency_new_selector").val() !== null && $(".single-option-radio input:checked").length == $(".single-option-radio").length) { 
      jQuery("#AddToCart").removeAttr("disabled"); 
     } 
     }); 

私はその中の行を追加したいと思い、次のようになります

if (jQuery(".frequency_new_selector").val() == 1 { 
       event.preventDefault(); 
       $('.cd-popup').addClass('is-visible'); 
      } 

私のHTMLは次のようになります。

<div class="frequency_new_label" style=""> 
    <select class="frequency_new_selector"> 
     <option selected="selected" disabled="disabled">Please Select Shipping Interval</option> 
     <option data-type="2" data-num="1" value="1">Weekly</option> 
     <option data-type="3" data-num="1" value="2">Monthly</option> 
    </select> 
</div> 
+0

*「私はその中の行を追加したいと思い、このように見える」* - あなたはそれを試みたときに何が起こったのか? – nnnnnn

答えて

0

あなたはそれをやったやり方で動くはずです...しかし、私はおそらくあなたがあなたを作るように少しそれを変更するでしょう必要なjQueryコールは非常に高価な操作です。

変更コールバックが呼び出されると、thisがDOM要素(ドロップダウン)に割り当てられます。

$(".frequency_new_selector").on("change", function() { 
 
    if (this.value === '1') { 
 
    event.preventDefault(); 
 
    $('.cd-popup').addClass('is-visible'); 
 
    } 
 
});

+0

これは美しくあなたに感謝しました! – likwidmonster

+0

心配はいりません!お役に立てて嬉しいです。 –

関連する問題