javascript - 如何防止javascript中的非字母数字输入?

标签 javascript jquery regex

$("#user").keyup(function(e){ 
    var regx = /^[A-Za-z0-9]+$/;
    if (!regx.test('#user')) 
    {$("#infoUser").html("Alphanumeric only allowed !");}
);}

#user 是文本输入,如果用户输入除字母和数字以外的任何内容,我想显示警告。
在上述情况下,无论键入什么都会出现警告。

最佳答案

改变:

if (!regx.test('#user')) 

if (!regx.test( $(this).val() ) ) 

做:

$("#user").keyup(function(e){     
    var str = $.trim( $(this).val() );
    if( str != "" ) {
      var regx = /^[A-Za-z0-9]+$/;
      if (!regx.test(str)) {
        $("#infoUser").html("Alphanumeric only allowed !");
      }
    }
    else {
       //empty value -- do something here
    }
});

JS Fiddle例子

关于javascript - 如何防止javascript中的非字母数字输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14336195/

相关文章:

javascript - 如何使用 JavaScript 从 div 标签中过滤掉 HTML 标签

javascript - 无法解析来自服务器的 Cakephp Jquery Datatable JSON 数据

jquery - 在codeigniter(flashdata)中返回一个json对象

javascript - jQuery 自动完成多个文本框

regex - 需要从 url 中删除特定参数

javascript - 如何理解正则表达式 '\b' ?

javascript - 从子组件 reactjs 运行函数

javascript - JQuery 与 YUI 比较?也许原型(prototype)?

javascript - 单击按钮后下载 CSV 文件

javascript - 从日期选择器中 trim 包含时间的字符串