检查一个string是否有空白

我试图检查一个string是否有空格 。 我发现这个function,但它似乎并没有工作:

function hasWhiteSpace(s) { var reWhiteSpace = new RegExp("/^\s+$/"); // Check for white space if (reWhiteSpace.test(s)) { //alert("Please Check Your Fields For Spaces"); return false; } return true; } 

顺便说一下,我向RegExp添加了引号。

有什么不对? 有什么更好的,我可以使用? 希望JQuery。

你可以简单地在inputstring上使用indexOf方法:

 function hasWhiteSpace(s) { return s.indexOf(' ') >= 0; } 

或者您可以使用简单的RegEx上的testing方法:

 function hasWhiteSpace(s) { return /\s/g.test(s); } 

这也将检查其他空白字符,如Tab。

你的正则expression式不会匹配任何东西,因为它是。 你一定要删除引号 – "/"字符就足够了。

/^\s+$/正在检查string是否为空白:

  • ^匹配string的开头。
  • \s+意味着至less1个,可能更多的空间。
  • $匹配string的结尾。

尝试用/\s/ (和没有引号)replace正则expression式

你的逻辑是倒退的,真实的意思是假的。

这是我build议的validation:

 var isValid = false; // Check whether this entered value is numeric. function checkNumeric() { var numericVal = document.getElementById("txt_numeric").value; if(isNaN(numericVal) || numericVal == "" || numericVal == null || numericVal.indexOf(' ') >= 0) { alert("Please, enter a numeric value!"); isValid = false; } else { isValid = true; } }