单击其他输入时禁用输入字段

时间:2015-04-24 07:48:41

标签: javascript jquery html5 input

我希望在单击所选输入之一时禁用所选输入字段。

实施例: 1.用户选择输入字段“名称”,输入字段“公司”和“公司编号”被禁用; 2.该字段在“进入”字段时被禁用,而不是在其中写入。

这是我的代码;它有效,但不完全符合预期。它在用户开始输入时禁用。我想在“输入”/点击时禁用它。

var disableField = function () {
  var state = document.getElementById("name").value.length > 0;
  document.getElementById("company").disabled = state;
  document.getElementById("number").disabled = state;
};

有什么建议吗?提前谢谢!

3 个答案:

答案 0 :(得分:0)

您应该使用.onfocus事件。

// name, company, company_number are the elements

function func(){
    if(this.value.length == 0) company_number.disabled = true;
    else company_number.disabled = false;
}

name.onfocus = func;
company.onfocus = func;

答案 1 :(得分:0)

尝试使用onfocus这样的事件:

<input type="text" class="form-control" id="name" placeholder="Name" onfocus="disableField()"/>

单击此事件并在输入字段中设置焦点时,将激活此事件。

相反的事件(点击字段时)是onblur

答案 2 :(得分:0)

你在jQuery下标记了你的问题然后为什么不尝试一些jQuery!使用这样的东西 -

<script>
$('#elementId').click(function(){
  $("#someElementId").attr('disabled', true);
});
</script>