2010-09-21 60 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 
相关问题