Javascript 如何使用户只将数字粘贴到文本区域框中?

Javascript 如何使用户只将数字粘贴到文本区域框中?,javascript,Javascript,我有一个要求,让textarea字段只允许数字,并输入易于检查的键 function validate(key) { // getting key code of pressed key var keycode = (key.which) ? key.which : key.keyCode; var phn = document.getElementById('textarea'); // comparing pressed keycodes if (

我有一个要求,让textarea字段只允许数字,并输入易于检查的键

 function validate(key) {

    // getting key code of pressed key
    var keycode = (key.which) ? key.which : key.keyCode;
    var phn = document.getElementById('textarea');
    // comparing pressed keycodes
    if ((keycode < 48 || keycode > 57) && keycode !== 13) {
        return false;
    }


}

<div>
<textarea id="textarea" rows="4" cols="50"  onkeypress="return validate(event)" />
</div>

我不做Javascript。有什么建议吗

假设inputText是输入字段的内容,请尝试:

var textareaInput = $("#txtarea").val();

if ((keycode < 48 || keycode > 57) && keycode !== 13 && isNaN(parseInt(textareaInput)))
{
     return false;
}
var textareaInput=$(“#txtarea”).val();
if((keycode<48 | | keycode>57)&&keycode!==13&&isNaN(parseInt(textareinput)))
{
返回false;
}

如果输入是数字,则返回true。

jQuery用于读取粘贴字符串的输入:

$input = $("textarea");
$input.on("input", function(){
    var value = $(this).val();
    if ( ! isNaN(parseInt(value)))
         $(this).val("");
});

每次输入字符或将内容粘贴到文本区域时,它都会检查文本区域的值是否为数字。如果是,保留它,否则转储整个内容并使其成为空字符串。

有一个漂亮的jquery插件用于此目的:。您可能会喜欢它

您的事件处理程序在哪里?如果您只需要数字,为什么要使用文本区域?如果他们正在粘贴,他们将不会得到字母字符的按键。您需要在该文本区域中检查它,然后仅当输入字符串为numerics@sebnukem:这是我的客户的要求。如果可能,请告诉您的客户textarea用于文本。无需此。我要求提供textarea字段。这将解决复制和粘贴问题以及单键输入。我仍然能够粘贴字母文字。我没有使用jquery的经验。请提供一个解决方案。
$('textaarea').inputmask({mask:“9”,repeat:10,greedy:false})
例如,它允许您最多输入10位数字。如果需要更多,请更改“重复参数”<代码>掩码:9表示此插件中的数字,
贪婪:false
表示可以保留较少的符号,然后在repeat param中提供。
$input = $("textarea");
$input.on("input", function(){
    var value = $(this).val();
    if ( ! isNaN(parseInt(value)))
         $(this).val("");
});