2010-09-21 62 views
1

我需要用jquery和/或javascript創建一個textarea。如何用jQuery和/或javascript創建一個textarea?

我正在使用此代碼(click here for preview),但退格鍵,輸入,simbols和小寫不起作用。爲什麼?

<!DOCTYPE html> 
<html> 
    <head> 
     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> 
     <meta charset=utf-8 /> 
     <title>TEST</title> 
     <!--[if IE]> 
     <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
     <![endif]--> 
     <script type="text/javascript"> 
     <!-- 
      $(document).keyup(function (event) { 
       var keyCode = event.keyCode; 
       $('#mytext').text(function (i, text) { 
        return text + String.fromCharCode(keyCode); 
       }); 
      }); 
     // --> 
     </script> 
     <style> 
      #cmd { 
       position: relative; 
       font-family: courier; 
       font-weight:bold; 
       font-size: 14px; 
       padding: 5px; 
       overflow: hidden; 
      } 
      #mytext { 
       float: left; 
       padding-left: 3px; 
       white-space: pre; 
      } 
     </style> 
    </head> 
    <body> 
     <div id="cmd"> 
      <br> 
      <div id="mytext">hello </div> 
     </div> 
    </body> 
</html> 

回答

1

爲什麼沒有這些鍵調用一個函數來把HTML中<div id="cmd"></div>之間

我找不到一個按鍵事件的功能,但它應該給你一個想法

if (keycode==31) { 
    $("#cmd").append("<br/>"); 
} 

31是輸入碼。

瞧,他們在按鍵討論jQuery函數:
jQuery Event Keypress: Which key was pressed?

0

有關的keydown和KeyUp事件,您可以 識別最常用的鍵(字母,數字 ,和其他幾個人)由剛剛 看event.keyCode多 以下假裝它是一個ASCII碼 的代碼。但是,它並不是真的,並且 很多Javascript手冊說 它可以被轉換爲一個字符由 做 「String.fromCharCode(event.keyCode)」 是錯誤的。在keydown和keyup 事件中,關鍵代碼不是 字符代碼,並且此轉換 將給出許多關鍵字的通用結果。 沒有通用的便攜方式將鍵碼轉換爲字符。你幾乎不得不感知瀏覽器 類型,並基於它的關鍵映射。

http://unixpapa.com/js/key.html

你爲什麼不使用一些造型一個textarea?

0

return text + String.fromCharCode(keyCode);將字符串附加到另一個字符串。退格鍵和其他控制鍵不會附加字符串,它們會執行刪除字符/移動插入符的操作。在這種情況下,你應該自己處理這些keyCodes。您也可以指定內容爲editable,然後瀏覽器處理所有控制鍵(如所見即所得的編輯器)。

請參閱:http://jsbin.com/obuya3/4爲例

0

我不是你的問題。

如果你想用jQuery創建一個textarea,有很多方法。

$("#cmd").append("");

或者你想使用DOM。

0

如果使用HTML5,你可以使用 「CONTENTEDITABLE」 屬性。

0

寫這種類型的輸入鍵這項工作很好的代碼示例的

$(document).keyup(function(event) { 
    var key = event.which; 
    var text = $('#mytext'); 
     if (key === 13) { 
     $(text).append("<br/>"); 
    } else { 
     $(text).append(String.fromCharCode(keyCode)); 
    } 
}); 

http://jsbin.com/obuya3/8/edit 
相關問題