繁体   English   中英

JavaScript和HTML中的输入验证

[英]Input validation in JavaScript and HTML

我做了一个javascript函数,并希望在文本框中获取该函数的值。 我怎样才能做到这一点?

我的下一个问题是如何使验证仅在文本框中输入数字?

好了,Archimonon在如何使js方法在输入文本上设置值方面做得很好,因此这是如何验证输入以仅接受将接受诸如123123123.41212313之类的数字的方法。

<input type="text" 
onkeypress="if ( isNaN(this.value + String.fromCharCode(event.keyCode) )) return false;"
/>

并且这将不接受输入点(。),因此它将仅接受整数

<input type="text" 
onkeypress="if ( isNaN( String.fromCharCode(event.keyCode) )) return false;"
/>

其他人提供了有关如何检索值的答案。

为了进行验证,您应该学习如何使用正则表达式。 例如

function checkPattern()
{
   var re = new RegExp(/^\d+$/);
   if (!re.test(this.value)) {
        this.focus();
        alert("Must be a number!");
   }
}

var inp = document.getElementById('someTextInput');
inp.addEventListener('blur',checkPattern);

互联网上有很多关于使用正则表达式的教程。

这是您可以在文本框中添加值的方法:

var data = /*call to your function*/
var txtbox = document.getElementById('your textbox id');
txtbox.value = data;

对于数字验证,请尝试以下操作(在文本框的onkeypress="fncInputNumericValuesOnly" ):

function fncInputNumericValuesOnly()
{
    if(!(event.keyCode >= 45 && event.keyCode <= 57))
    {
        event.returnValue=false;
    }
}
<textarea id="my_textbox" name="textbox" ...></textarea>
//the row above is simple html

getElementById("my_textbox").value += "something as a string from js function";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM