0

送料無料の場合はセレクトボックスを無効にしたい。

<select name="shipping_method" id="shipping_method">
    <option value="">Select shipping</option>
    <option value="free_shipping">Free Shipping</option>
    <option value="international_delivery">International: $30.00</option>
</select>

私はこれを試しました(うまくいくかどうかはわかりませんが):

$(document).ready(function(){
    if($("option").val() == "free_shipping") {
        $("select").prop("disabled");
    }
});

そして、フォーム送信時に次のように仮定します。

$(document).ready(function(){
    $("form").submit(function() {
        $("select", this).prop("disabled", false);
    });
});
4

2 に答える 2

1

選択する 選択する

$('#shipping_method').change(function(){
    var j = $(this);
    if(j.val() == 'free_shipping') {
        j.attr('disabled', true);
    }    
    else {
        j.removeAttr('disabled');
    }
}).trigger('change');
于 2013-03-11T13:32:27.643 に答える
1

$.hasを使用できます

$('#shipping_method').has('option[value="free_shipping"]').prop("disabled", true);

デモ:フィドル

于 2013-03-11T13:33:15.270 に答える