jQuery:基于选择某个下拉值启用文本字段

fak*_*ood 0 jquery

我想我非常接近解决这个问题,但我在某个地方出错了.

如果从下拉列表中选择"Mercedes",则应启用文本输入(请注意,实际系统中没有类或id名称,因此我必须使用表单名称).

如果此值设置为Mercedes,我还需要它来检查初始页面加载,在这种情况下,输入也不应该显示.

这是我到目前为止(小提琴):

HTML:

你的车:

<select name="car">
  <option value=""></option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select>
<br>
What do you like about your Mercedes?
<input type="text" name="likemercedes">
Run Code Online (Sandbox Code Playgroud)

jQuery的:

$("input[type='text'][name='likemercedes']").prop('disabled', true);

if($("input[type='text'][name='car']").val() == "mercedes") 
{
    $("input[type='text'][name='likemercedes']").removeAttr('disabled');
}
Run Code Online (Sandbox Code Playgroud)

tym*_*eJV 5

简单的东西:

$("select[name=car]").change(function() {
    if (this.value == "mercedes")
        $("input[name=likemercedes]").prop("disabled", false);
    else
        $("input[name=likemercedes]").prop("disabled", true);
}).change();
Run Code Online (Sandbox Code Playgroud)

最后的链接.change()将在页面加载时调用该方法.