“如何管理”&引用;和'';在javascript文件中声明变量时
我有一个搜索框,用户可以把搜索文本。例如:书、‘书’、‘书’。在js文件中,一个变量从搜索框中获取值“如何管理”&引用;和'';在javascript文件中声明变量时,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个搜索框,用户可以把搜索文本。例如:书、‘书’、‘书’。在js文件中,一个变量从搜索框中获取值 var searchtext= "${searchtext}"; <br/> 如果我改变 var searchtext= "${searchtext}"; to var searchtext= '${searchtext}'; 如果用户将“book”放入搜索框,则此代码失败。请帮帮我,谢谢 快速修复 str.replace(/["|']+/g, "'"); var search
var searchtext= "${searchtext}"; <br/>
如果我改变
var searchtext= "${searchtext}"; to var searchtext= '${searchtext}';
如果用户将“book”放入搜索框,则此代码失败。请帮帮我,谢谢 快速修复
str.replace(/["|']+/g, "'");
var searchtext= "${searchtext}";
您可以将
“
或”
替换为单个引号”
。以下是一个示例:
var str= '"book"';
str.replace(/["|']+/g, "'");
演示:若您不允许用户在搜索框中插入特殊字符,那个么对您来说就更容易了
$('searchBoxElement').bind('keypress', function (event) {
var regex = new RegExp("^[a-zA-Z0-9]+$");
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
event.preventDefault();
return false;
}
});
它是什么后端语言?您必须确保这样的特殊字符被转义。如果您使用
var searchtext=${searchtext};
不带引号,也会失败?正如@dfsq所说,哪种是后端语言?您可以删除所有引号,然后执行搜索!类似于此测试。替换(/\“/g,”);replace(新的RegExp(“”,'g'),“'”);它将只替换第一次出现的~”“~用户可以输入特殊符号。如果用户输入‘book’,会发生什么。这一次,str=''book'',它将被'book'替换,现在,var str=''book'',用户将被通知消息:Uncaught SyntaxError:expected identifier by browser您必须以这种方式转义:'\'book''谢谢,Radonirina。但我想输入和输出的搜索文本是相同的结果。例如:“书”=>“书”。礼物:''书'=>''书'
$('searchBoxElement').bind('keypress', function (event) {
var regex = new RegExp("^[a-zA-Z0-9]+$");
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
event.preventDefault();
return false;
}
});