如果存在选项值,则禁用选择输入

时间:2013-03-11 13:28:48

标签: javascript jquery forms

如果免费送货可用,我想禁用选择框。

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

2 个答案:

答案 0 :(得分:1)

选择选择

$('#shipping_method').change(function(){
    var j = $(this);
    if(j.val() == 'free_shipping') {
        j.attr('disabled', true);
    }    
    else {
        j.removeAttr('disabled');
    }
}).trigger('change');

答案 1 :(得分:1)

您可以使用$.has

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

演示:Fiddle