1

我有一个文本框,用户可以在其中输入评论。注释可以是字母(小写或大写)或数字或 @ 或分号或冒号或句点或逗号或 $ 或正斜杠或空格或 - 或 _ 的组合。我尝试使用以下函数,但它不测试 $ 或空格或 - 或 _。我怎样才能将这些也包含在这个 JavaScript 函数中?我还想在输入中允许一个空字符串。

function alphanumeric(inputtxt) 
{  
  var letters = /^[0-9a-zA-Z]+$/; 
  if(inputtxt.value.match(letters)) 
  { 
    alert('Your registration number have accepted : you can try another'); 
    document.form1.text1.focus(); 
    return true; 
  } 
  else 
  { 
    alert('Please input alphanumeric characters only'); 
    return false; 
  } 
} 

答案如下(在 xdazz 的帮助下提供):

   function alphanumeric(inputtxt) 
{  
  var letters = /^[\w\d\s@;:.,-/$/]*$/; 
  if(inputtxt.value.match(letters)) 
  { 
    alert('Your registration number have accepted : you can try another'); 
    document.form1.text1.focus(); 
    return true; 
  } 
  else 
  { 
    alert('Please input alphanumeric characters only'); 
    return false; 
  } 
} 
4

1 回答 1

6

试试下面的正则表达式。

var letters = /^[\w\d\s$@;.,-/]+$/; 
于 2012-07-04T03:23:05.887 回答