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

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

最佳答案

您可以使用$.has

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

演示:Fiddle

关于javascript - 如果选项值存在则禁用选择输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15339848/

相关文章:

javascript - 使用 jQuery 选择仅包含 "specified text"且不包含其他内容的 tds

javascript - 将附加元素附加并保留到 jQuery ui-autocomplete

Javascript onchange函数执行onload但不执行onchange

javascript - 响应式 div 中的绝对垂直和水平居中文本

jquery - 如何启用 Bootstrap 中默认禁用的按钮?

css - 使选择选项的字体大小与其容器相同,而不指定 px/pt 单位

php - 两个表格,一页

javascript - 如何在 iOS 13 上的 Safari 中检测设备名称,同时它不显示正确的用户代理?

javascript - 从 Meteor js 中的 2 个模板获取输入值

javascript - Javascript 默认是同步(阻塞)还是异步(非阻塞)