简体   繁体   English

Javascript正则表达式删除字母或空格以外的任何字符

[英]Javascript Regular Expression to remove any characters other than letters or space

I'm trying to validate an input field and store it using AJAX 我正在尝试验证输入字段并使用AJAX进行存储
My JavaScript code is : 我的JavaScript代码是:

<script type='text/javascript'> 
function addICValidate()    {
    var invalidString=/[^a-zA-Z\s]/; // Alphabets with spaces only
    var searchQuery=document.getElementById('addICName').value;
    var validQuery=searchQuery.replace(invalidString,"");
    document.getElementById('addICName').value=validQuery;

    return true;
}

function addIC()    {
    if(addICValidate()) {
        hideAddICBox();
        var ajaxObj=newAjaxObj();
        if(ajaxObj) {       
            ajaxObj.onreadystatechange=function() {
                if(ajaxObj.readyState==4)   {
                        hideAddICBox();
                        addUpdateItemForm();
                }
            }

            var ICName=document.getElementById('addICName').value;
            url="addICSubmit.php?ICName="+ICName;
            url = encodeURI(url);

            ajaxObj.open("GET",url,true);
            ajaxObj.send(null);
        }
    }
    return false; // Required
}
</script>

And here's the HTML: 这是HTML:

<form id='addICForm' name='addICForm' action='#' onsubmit='return addIC()'>
<table width=100% align='center' id='addICAttList'>
    <tr>
        <td>Name</td>
        <td><input type='text' id='addICName' name='addICName' /></td>
    </tr>
    <tr>
        <td align='right'><input type='submit' value='Add Item' /></td>
        <td align='left'><input type='reset' value='Clear' /></td>
    </tr>
</table>
</form>

But the replace isn't working! 但是替换无效! I tried the regex in an online JavaScript regex tester and it worked. 我在一个在线JavaScript regex测试器中尝试了regex,并且它起作用了。 What am I doing wrong? 我究竟做错了什么?

This regex coupled with javascript's replace will replace only the first instance of the invalid character. 此正则表达式加上javascript的replace将仅替换无效字符的第一个实例。 Try adding g option at the end of the Regex string /[^a-zA-Z\\s]/g 尝试在正则表达式字符串/[^a-zA-Z\\s]/g的末尾添加g选项

暂无
暂无

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

相关问题 javascript正则表达式以检查字符和数字以外的其他字符 - javascript regular expression to check other than characters and numbers 正则表达式只匹配字母,空格和非英语字符? - Regular expression to match only letters, space and non-English characters? 使用正则表达式(JavaScript)删除一个空格字符 - Remove One Space Character with a Regular Expression (JavaScript) 用于删除除数字以外的字符并仅在 Angular 6 中允许单个小数点的正则表达式 - Regular expression to remove characters other than number and allow single decimal dot only in Angular 6 Javascript正则表达式可查找输入中除浮点数以外的任何字符 - Javascript regular expression to find any character other than floating point numbers in the input 正则表达式,除字母外(javascript) - Regular expression anything but letters (javascript) 正则表达式javascript数字和字母 - regular expression javascript numbers and letters 正则表达式匹配任何字符串,最多为“/”Javascript - Regular Expression that matches any string of characters up to “/” Javascript Javascript正则表达式,用于删除字符串末尾的字符 - Javascript regular expression to remove characters from the end of a string 要检查的正则表达式-不超过2个连续数字或字符,并且不超过1个相同数字或字符 - Regular Expression to check- No more than 2 sequential numbers or characters and No more than 1 same numbers or characters-Javascript
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM