Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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 限制文本框以允许在开始时使用特殊字符_Javascript_Jquery - Fatal编程技术网

Javascript 限制文本框以允许在开始时使用特殊字符

Javascript 限制文本框以允许在开始时使用特殊字符,javascript,jquery,Javascript,Jquery,我需要验证一个文本框,我用它来搜索来自数据库的内容。需要在开始时限制特殊字符,但允许在单词后面。还有空格 例:必须允许 java/j2ee java和servlet 但不是 @java $java (空格)java $("#keyvalue").keypress(function (e) { var regex = new RegExp("^[a-z0-9][a-z0-9_ .-]*$"); var regex1 =new RegExp("[,%_$]"); var key =

我需要验证一个文本框,我用它来搜索来自数据库的内容。需要在开始时限制特殊字符,但允许在单词后面。还有空格

例:必须允许
java/j2ee
java和servlet

但不是
@java
$java
(空格)java

$("#keyvalue").keypress(function (e) { 

  var regex = new RegExp("^[a-z0-9][a-z0-9_ .-]*$");
  var regex1 =new RegExp("[,%_$]"); 
  var key = String.fromCharCode(!event.charCode ? event.which : event.charCode); 

  if (!regex.test(key)){

    $("#errormess").html("Please select valid input").show();
  } 

  if(regex1.test(key)) {

    e.preventDefault(); 
  } else { 

  $("#errormess").html(""); 
  }

});

试试这样的

function isValid(){
    return !/[@$\s\/&]/g.test(yourString.indexOf(0));
    // Returns true if special char not exists at first position
}
您可以在
[@$\s\/&]

中添加更多特殊字符检查此代码段

var textbox = document.getElementById('textbox');
var pattern = /^([a-zA-Z0-9]+)([a-zA-Z0-9!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?\s]+)$/;
if(!pattern.test(textbox.value)){
    console.log('Not allowed!');
}

显示您尝试的代码。这不是服务。“特殊角色”是一个很奇怪的短语。“q”是一个特殊的字符吗?是“あ"? 为什么?$(“#keyvalue”).keypress(函数(e){var regex=new RegExp(“^[a-z0-9][a-z0-9.-]*$”);var regex1=new RegExp([,%。”);var key=String.fromCharCode(!event.charCode?event.which:event.charCode);if(!regex.test(key)){$(“#errormess”).html(“请选择有效输入”).show()若(regex1.test(key)){e.preventDefault();}或者{$(“#errormess”).html(“”;}在我尝试的代码上面,它会限制但不允许在单词后面。
var textbox = document.getElementById('textbox');
var pattern = /^([a-zA-Z0-9].*)$/;
if(!pattern.test(textbox.value)){
    console.log('Not allowed!');
}