2011-12-07 17 views
-1

これをすべてのプラットフォームで動作させるためにすべてを試しました。私は間違って何をしていますか?テキストが入力されたときにDIVを表示

JS--

$(document).ready(function(){ 
    $('#gname').keypress(function() { 
     if ($(this).val() == "Toys") 
      $('#number').slideDown('fast') 
     else 
      $('#number').hide(); 
    }); 
}); 

CSS--

#number { display: none; height: 100px; border: solid 1px #ddd; } 

HTML--

Type here:<input type="text" id="gname"> 
<div id="number"> 
    Test 
</div> 

答えて

2

値は時間によって変更されていますイベントハンドラが実行されます:http://jsfiddle.net/azHQz/

$(function(){ 
    $('#gname').on('keyup', function(event) { 
     //if (event.keyCode == 13) {//un-comment this to only check the value when the enter key is pressed 
      if ($(this).val() == "Toys") 
       $('#number').slideDown('fast') 
      else 
       $('#number').hide(); 
     //}//un-comment this to only check the value when the enter key is pressed 
    }); 
}); 

デモのみ値をチェックするためEnterキーが押されたとき:http://jsfiddle.net/azHQz/1/

+0

私はそれだけに関係なく、入力した内容のイベントを入力してください上の後にポップアップ表示しないようにしたい場合は?それは可能ですか?私はこのサイトを見つけたのが幸いです。迅速な返信をお寄せいただきありがとうございます。本当に感謝。 – user1086253

+0

@ user1086253 'event'オブジェクトをチェックして、' keyCode'プロパティが '13'(Enterキー)に設定されているかどうかを確認します:http://jsfiddle.net/azHQz/1/ – Jasper

+0

イベントオブジェクトスクリプトの中にいる? – user1086253

2

スクリプトはjQueryの機能を参照するが、jQueryライブラリが含まれていません。この機能を有効にするには、jQueryをドキュメントに追加してください。 $を最初に使用する前に、あなたの文書の頭の中で次のよう

場所:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
2

はjQueryのを含める:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script> 

CSS:

#number { 
    display:none; 
} 

はJQuery:

$('#gname').bind('keyup change',function(){ 
    if(this.value.length > 0){ 
     $('#number').show(); 
    } 
    else { 
     $('#number').hide(); 
    } 
}); 

デモ:あなたはkeyupイベントにバインドするのではなくkeypress場合http://jsfiddle.net/pSLhN/

0

まず、jQueryを含める必要があります(このことを知っていることを確認し、デモから外しただけですが、必要です)。

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script> 

次に、keyupイベントを確認する必要があります。

$(document).ready(function(){ 
    $('#gname').keyup(function() { 
     if ($(this).val() == "Toys") 
     $('#number').slideDown('fast') 
     else 
     $('#number').hide(); 
    }); 

});

0

あなたのソースは実際にdivを表示しません。 divは非表示になり、jsはそれをスライドしたり隠したりしますが、表示しません。

元の質問を編集した人は誰でもそれを混乱させました。私は恐れています。今は欠けているものがたくさんあります。

編集:ああ、今修正されています。

0

div idにdisplay noneを指定しているので、実際は完全に動作していますので、見えないシーンの裏で動作します。 display noneプロパティを削除し、それが動作するはず

DEMO

関連する問題