Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jquery限制用户在文本框中插入空格、大写字母、第一个值作为int_Javascript_Jquery_Html_Textbox - Fatal编程技术网

Javascript 使用jquery限制用户在文本框中插入空格、大写字母、第一个值作为int

Javascript 使用jquery限制用户在文本框中插入空格、大写字母、第一个值作为int,javascript,jquery,html,textbox,Javascript,Jquery,Html,Textbox,我有一个表单,我希望用户只输入字母和数字 我想限制他们的行为 使用数字作为第一个值,例如1abc 使用国会大厦字母,例如1ABc 使用空格,例如1ab-CD-d5 我只想要像abc1或a1bc或f25fhgfh45w 我试过了,但没有帮到我。你可以使用RegExp/^\d|[A-Z\s]+//g匹配字符串或大写字母或空格开头的数字,删除I标志和$锚,使用输入事件也处理元素处的用户粘贴 $('.alphaonly')。在('input',function()上{ $(this.val)(函数(i

我有一个表单,我希望用户只输入字母和数字

我想限制他们的行为

  • 使用数字作为第一个值,例如
    1abc
  • 使用国会大厦字母,例如
    1ABc
  • 使用空格,例如
    1ab-CD-d5
  • 我只想要像
    abc1
    a1bc
    f25fhgfh45w


    我试过了,但没有帮到我。

    你可以使用
    RegExp
    /^\d|[A-Z\s]+//g
    匹配字符串或大写字母或空格开头的数字,删除
    I
    标志和
    $
    锚,使用
    输入
    事件也处理
    元素处的用户粘贴

    $('.alphaonly')。在('input',function()上{
    $(this.val)(函数(i,val){
    返回val.replace(/^\d|[A-Z\s]+/g',);
    });
    });
    
    您可以使用
    RegExp
    /^\d|[A-Z\s]+/g
    匹配字符串或大写字母或空格开头的数字,删除
    i
    标志和
    $
    锚定,使用
    输入
    事件也处理
    元素处的用户粘贴

    $('.alphaonly')。在('input',function()上{
    $(this.val)(函数(i,val){
    返回val.replace(/^\d|[A-Z\s]+/g',);
    });
    });
    
    通过@guest271314观察您的问题和评论后,我想出了解决方案:

    $(函数(){
    var haveFirst=假;
    $('.alphaonly')。on('keypress',函数(事件){
    if($(this).val().length==0){
    haveFirst=false;
    }
    var regex=新的RegExp(“^[a-z0-9_]+$”;
    var first=新的RegExp(“^[a-z]+$”;
    var key=String.fromCharCode(!event.charCode?event.which:event.charCode);
    如果(!first.test(key)&&haveFirst==false){
    event.preventDefault();
    返回false;
    }else if(正则表达式测试(关键)){
    haveFirst=true;
    }
    如果(!正则表达式测试(键)){
    event.preventDefault();
    返回false;
    }
    }); 
    })

    通过@guest271314观察您的问题和评论后,我想出了解决方案:

    $(函数(){
    var haveFirst=假;
    $('.alphaonly')。on('keypress',函数(事件){
    if($(this).val().length==0){
    haveFirst=false;
    }
    var regex=新的RegExp(“^[a-z0-9_]+$”;
    var first=新的RegExp(“^[a-z]+$”;
    var key=String.fromCharCode(!event.charCode?event.which:event.charCode);
    如果(!first.test(key)&&haveFirst==false){
    event.preventDefault();
    返回false;
    }else if(正则表达式测试(关键)){
    haveFirst=true;
    }
    如果(!正则表达式测试(键)){
    event.preventDefault();
    返回false;
    }
    }); 
    })
    
    
    先生,您能对其进行编码以避免confusion@Coder回答时代码存在什么混淆?请参阅在我的文件中复制js小提琴可以吗?或者我必须添加更多的东西。@Coder你说的“更多”是什么意思?你在链接的JSFIDLE上试过代码吗?在JSFIDLE中,它可以工作,但是当我复制文件中的代码时,它就不能工作了。先生,你能把它编码成这样吗confusion@Coder回答时代码存在什么混淆?请参阅在我的文件中复制js小提琴可以吗?或者我必须添加更多的东西。@Coder你说的“更多”是什么意思?你在链接的JSFIDLE上试过代码吗?在JSFIDLE中,它可以工作,但是当我复制文件中的代码时,它就不工作了。