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 に答える