asp.net - javascript 中带有字母数字检查的文本框

标签 asp.net javascript

我有一个文本框,它不需要允许用户输入任何特殊字符。他可以输入:

  1. A-Z
  2. a-z
  3. 0-9
  4. 空间。

还有一个条件是第一个字母应该是字母。 如何在每次按键时进行 JavaScript 验证?

最佳答案

添加一个 onKeyUp="javascript:checkChar(this);"到输入框。

function checkChar(tBox) {   

    var curVal = tBox.value;

    if ( /[^A-Za-z0-9 ]/.test(curVal) ) { 

        //do something because he fails input test.

    }

}

或者,要仅检查按下的键,您可以从事件中获取键码,如下所示:

onKeyUp="javascript:checkChar(event);"

function checkChar(e) {

    var key;


    if (e.keyCode) key = e.keyCode;
    else if (e.which) key = e.which;

    if (/[^A-Za-z0-9 ]/.test(String.fromCharCode(key))) {

        //fails test

    }

}

错过了有关第一个字符的部分,但您可以像第一个示例一样对文本框值进行测试:

/^[A-Za-z]/.test(curVal)

或者甚至使用第二种方法,但也传递文本框,这样您就可以获得它的完整值。

关于asp.net - javascript 中带有字母数字检查的文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/950208/

相关文章:

javascript - 图表在 Firefox 或 Internet Explorer 中不起作用,仅在 Chrome 中起作用

javascript - 我需要将 gatsby-image 添加到我的网站。需要一些指导

javascript - 为什么 console.log 甚至在修改之前就输出修改后的值?

javascript - 在 ASP.Net MVC Controller 中捕获 ajax 文件

c# - FindByName 或 FindByValue set .selected on dropdownlist 返回错误 对象引用未设置到对象的实例

javascript - 通过 javascript 使用 Sitecore 发布表单

c# - ASP.NET Web Api 2 中的异常处理

javascript - 如何在 Javascript 对象中动态引用变量键名称?

ASP.NET Request.Cookies ["cookie"] 在初始请求时在 IE 中返回空白

javascript - 加载网站时随时清除浏览器缓存