选择框禁用自我选择

时间:2016-08-11 22:12:23

标签: javascript jquery html html5

我希望在用户选择某些内容时禁用选择框。 Javascript代码:

function desabilitar(val) {
    $(val).attr('disabled','disabled');
}

HTML:

<select class="form-control" onchange="desabilitar('mes')"  id="mes" name="mes">

但是没有用......有什么帮助吗?

4 个答案:

答案 0 :(得分:0)

您应该使用prop而不是attr,并确保使用“#”按ID选择属性:

示例:

function desabilitar(val) {
  $('#'+val).prop('disabled', true);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="form-control" onchange="desabilitar('mes')"  id="mes" name="mes">
  <option>123</option>
  <option>456</option>
</select>

答案 1 :(得分:0)

试试这个:

function desabilitar(val) {
 document.getElementById(val).disabled = true;
}

与jQuery相同:

function desabilitar(val) {
  $("#" + val).attr('disabled', 'disabled');
}

您想使用jQuery还是JavaScript?在您的问题中,您要求使用JavaScript,但是您正在使用jQuery?

答案 2 :(得分:0)

您需要在"#" +之前添加val。这将确保您正在寻找id为val的元素。

&#13;
&#13;
function desabilitar(val) {
  $("#" + val).attr('disabled', 'disabled');

}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="form-control" onchange="desabilitar('mes')" id="mes" name="mes">
  <option>Test 1</option>
  <option>Test 2</option>
  <option>Test 3</option>
</select>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

您需要使用#来正确获取其id的元素并设置disabled属性,如下所示:

function desabilitar(val) {
$("#"+val).attr('disabled','disabled');

}