0

HTMLページに単一のテキストボックスを持つ単純なフォームがあります。テキストボックスに値を指定せずに送信ボタンをクリックすると、テキストボックスの境界線の色が赤になる必要があります.Hereが私のコードです

$(document).ready(function(){
  $('.ip').click(function(){
    var optionSelected = false;
    if($('#test').val().length == 0 ) {
      $("#test").css("border-color","red"); 
    }
  });
});

フォームはこちら

<form action="" id="form1">
Test:<input type="text" name="test" id="test">
<input type="submit" class ="ip">
</form>

しかし、テキスト ボックスに値を指定せずに送信ボタンをクリックすると、テキスト ボックスの境界線の色が一時的に赤に設定されます。赤い境界線がテキスト ボックスに保持されません。

4

3 に答える 3

1

フォームを使用している場合は、これを行うためのより良い方法があります。クリックイベントを使用するのではなく、送信イベントを使用しています。

$(document).ready(function(){
  $('#form1').submit(function(e) {
    var optionSelected = false;
    if($('#test').val().length != 0 ) {
      return true;
    } else { 
      $("#test").css("border-color","red");
    }

    e.preventDefault();
  });
});

jsfiddle は次のとおりです: http://jsfiddle.net/UtqcA/

于 2013-09-24T09:40:17.447 に答える