2

jQueryを使用して、テキストが含まれている入力フィールドに異なるCSSを持たせようとしています。しかし、テキストが削除されたときにCSSを元に戻すことはできません。

入力フィールドのテキストが削除されたときに何かを行うjQueryまたはJavascriptイベントはありますか?

4

6 に答える 6

2

たぶん、もう少しjavascriptコードを追加する必要があります

var track = function() {

    if($(this).val().length){
        $(this).removeClass('empty').addClass('full');
    } else {
        $(this).removeClass('full').addClass('empty');            
    }
}

$('input').keyup(track);​

例:

http://jsfiddle.net/demee/63nz6/

于 2012-05-06T14:49:59.283 に答える
1

change()テキストが削除されたときにも起動します。
値を確認するだけです。

より迅速な対応のために、とも処理する必要がkeyupありinputます。

于 2012-05-06T14:43:02.497 に答える
1
$("#elementID").on('change', function() {

    if (this.value=="")  {
        //no text is present
    }else{
        //element contains something
    }

});

changeぼかしなどの特定のイベントでのみ発生します。より動的にするために、に置き換えることchangeを検討してください。keyup

于 2012-05-06T14:44:05.483 に答える
0

これを試して

$("selector").change(function() {
  if($(this).val() == "") {
   // your code
  }
})
于 2012-05-06T14:41:37.600 に答える
0
$("#element").change(function(){
  if($(this).val() == "") {
    // do here
  }
});
于 2012-05-06T14:43:55.180 に答える
0

キーアップで長さを確認すると、ユーザーが入力しているときに起動します。

$(document).ready(function() {
    $('#text').keyup(function() {
        if($(this).val().length == 0) {
            $(this).removeClass('filled_in');
        } else {
            $(this).addClass('filled_in');
        }
    });
});​

このjsFiddleで実際の動作を確認できます。

于 2012-05-06T15:51:19.180 に答える