0

如果其他人包含文本,是否有办法(最好使用 jQuery)阻止文本输入?

我可以看到一直阻止输入字段的方法,但不是动态的,因为其他字段包含文本。

<input name="inputone" id="i_one" type="text" value="">
<input name="inputtwo" id="i_two" type="text" value="">
<input name="inputthree" id="i_three" type="text" value="">

这是一个真正简单的设置。我只需要“i_one”包含任何文本,阻止“i_two”和“i_three”接收任何输入。但是如果用户在提交表单之前删除了他们在“i_one”中输入的内容,则该块将被解除,因此用户可以使用不同的字段。

4

2 回答 2

2

这个样子怎么样?

$('input').on('keyup', function() {
  $(this).siblings().prop('disabled', this.value.length ? true : false)
});

当然,您可能希望通过向您要收听的元素添加一个特殊的类来对其进行调整,使其不作用于所有输入元素。

JsFiddle如果你想调整/玩它。

于 2012-07-03T18:59:40.853 回答
0

我很快就想到了这个。

$(document).ready(function() {
    $("input").on("input", function() {
        if ($(this).val() == "") {
            $("input").removeAttr("disabled");
        }
        else {
            $("input").attr("disabled", "disabled");
            $(this).removeAttr("disabled");
        }
    });
});
于 2012-07-03T19:00:47.637 回答