2016-03-25 8 views
1

入力欄の中でEnter(キーボード上)を押して入力欄の中にテキストがあるたびに、入力ボックスのテキストが含まれて表示されます。入力欄の中のキーボード入力ボタンを押すたびに新しい段落が表示される

これは私の試みですが、私のコードで何が間違っていますか?それは動作しません:

https://jsfiddle.net/dxuax025/

HTML:

<input type="text" id="text"> 
<div id="list"></div> 

のjQuery:

$(document).ready(function() { 

       var r = $('<p>' + a.val() + '<p>'); 

     $('#text').keypress(function(e) { 
      if(e.which == 13 & a.val() !== "") { 
       var a = $('#text'); 
       var html = r(a.val()); 
       $('#list').append(html); 
       $(a).val("");} 
       return false; 
      }); 
     }); 
+0

あなたのコードは、* -keypressイベントではありませんマウスクリックイベントを – teran

+0

HMを入力してください*扱います。 OK =クリックしたように見える – teran

+0

私はキーボードのEnterキーを押したときに、 –

答えて

1

ロジックは次のとおりです。

  1. 検出しますENTERキー
  2. ユーザがENTERキーを押してから入力値を取る場合
  3. 最後に、divpタグを追加します。

$(document).ready(function() { 
 

 
\t $('#text').keypress(function(e) { 
 
\t  var key = e.which; 
 
\t  if (key == 13) // the enter key code 
 
\t  { 
 
\t  var inputText = $("#text").val(); 
 
\t  $("#list").append("<p>" + inputText + "</p>"); 
 
      $("#text").val(""); 
 
\t  } 
 
\t }); 
 
\t });
#list p { 
 
    background: rgba(255, 255, 255, 0.95); 
 
    box-shadow: 0 2px 2px rgba(0, 0, 0, .15); 
 
    color: #473e39; 
 
    font-size: 16px; 
 
    margin: 0 auto 5px; 
 
    padding: 20px; 
 
    max-width: 520px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="text" id="text" placeholder="Input something and enter"> 
 
<div id="list"></div>

関連する問題