2011-10-31 9 views
1

私は$placesという変数があります。以上0 places次のコードがある場合jQueryを使用して、ユーザーが入力を入力したかどうかをテストしますか?

var $places = $('#resultsListing li.place'); 

は、クラス.have-resultsを追加します。 0の結果がある場合は、コードが体にクラス.no-resultsを追加します。

body.removeClass("have-results no-results searching"); 

body.addClass(places.length > 0 ? "have-results" : "no-results"); 
$("div#busyAnimation").hide(); 

私は.hasnt-typed-yetと呼ばれる別のクラスを追加したいと思います。私はそれがクラスにとって恐ろしい名前だと知っていますが、それは私が達成したいことです。ユーザーがまだ入力していない場合は、そのクラスを本文に追加します。

これを行うための提案はありますか?

答えて

2
var textbox_text = $("#searchbox").val(); 
if(textbox_text !== ''){ 
    body.addClass(places.length > 0 ? "have-results" : "no-results"); 
}else{ 
    body.addClass('hasnt-typed-yet'); 
} 
$("div#busyAnimation").hide(); 
0
if($('input').val() == '') 
    $('body:first').addClass('hasnt-typed-yet') 
else 
    $('body:first').removeClass('hasnt-typed-yet') 
0
$textbox = $('#searchbox'); 
$body = $('body').filter(':first'); 
$places = $('#resultsListing li.place'); 

$textbox.keyup(function() { 
    if($(this).val() == '') $body.addClass('hasnt-typed-yet'); 
    else $body.removeClass('hasnt-typed-yet'); 
}); 

$body.addClass($places.length > 0 ? 'have-results' : 'no-results'); 
$('#busyAnimation').hide(); 
関連する問題