如何在jquery中检查输入是否包含空格或撇号

如何在jquery中检查输入是否包含空格或撇号,jquery,regex,Jquery,Regex,检查输入值是否包含空格或撇号的最佳方法是什么 谢谢 编辑: 我试过这个 var r = new RegExp("[^\s\']+"); if (r.test($("#UserName").val())){ alert("wrong"); } 但是,即使我输入了一个没有空格和撇号的字符串,也会出现警报。您的RegExp几乎是正确的: var r = /[^\s\']+/ 必须写 var r = new RegExp("[^\\s\\']+") 转义字符串中的反斜杠。但是,这仍然会检查是否

检查输入值是否包含空格或撇号的最佳方法是什么

谢谢

编辑:

我试过这个

var r = new RegExp("[^\s\']+");
if (r.test($("#UserName").val())){
  alert("wrong");
}

但是,即使我输入了一个没有空格和撇号的字符串,也会出现警报。

您的RegExp几乎是正确的:

var r = /[^\s\']+/
必须写

var r = new RegExp("[^\\s\\']+")
转义字符串中的反斜杠。但是,这仍然会检查是否存在一个或多个没有空格/撇号的字符。我想你想要

var contains = !!string.match(/\s|'/); // boolean

我找不到合适的正则表达式,我尝试了这个var r=new RegExp(“[^\s\']+”),但是它不起作用,你能把它应用到你的问题中吗?注释中的代码几乎难以辨认。你用那个正则表达式时发生了什么?它使用了什么输入?哪些输入失败?感谢您的回复,但是如何使用contains变量对输入进行测试?在if条件下使用
document.getElementById(“UserName”).value
作为
string
contains