在发送表单之前,在javascript中替换冒号
我有一个文本输入搜索字段。我想给用户输入的任何冒号添加一个转义反斜杠。这就是我现在拥有的:在发送表单之前,在javascript中替换冒号,javascript,Javascript,我有一个文本输入搜索字段。我想给用户输入的任何冒号添加一个转义反斜杠。这就是我现在拥有的: 走! document.getElementById(“搜索按钮”).addEventListener('click',function()){ 让text=document.getElementById('input').value; 设regex=/:/gi; 让new_text=text.replaceAll(regex,“\:”); }); \是转义序列中使用的字符串中的特殊字符。如果你想在字
走!
document.getElementById(“搜索按钮”).addEventListener('click',function()){
让text=document.getElementById('input').value;
设regex=/:/gi;
让new_text=text.replaceAll(regex,“\:”);
});
\
是转义序列中使用的字符串中的特殊字符。如果你想在字符串中添加一个\
,你也必须对它进行转义
let new_text = text.replaceAll(regex, "\\:");
因为反斜杠有一个特殊的含义,你必须转义这个字符 您可以通过
\\:
走!
document.getElementById(“搜索按钮”).addEventListener('click',function()){
让text=document.getElementById('input').value;
设regex=/:/gi;
让new\u text=text.replaceAll(regex,“\\:”);
document.getElementById('input')。value=new\u text;//新代码
});
即使在使用附加反斜杠修复替换项时,您的代码仍然无法工作,因为您还需要使用新值更改表单字段的值,如下所示“新代码”:
走!
document.getElementById(“搜索按钮”).addEventListener('click',函数(){
让text=document.getElementById('input').value;
设regex=/:/gi;
让new\u text=text.replaceAll(regex,\\:“”;//修复
document.getElementById('input')。value=new\u text;//新代码
});
这是否回答了您的问题?
<form role = "form" action="..." method="get">
<div>
<input id="input" type="text" name="q">
<button id="search_button" type="submit">Go!</button>
</span>
</div>
</form>
<script type="text/javascript">
document.getElementById("search_button").addEventListener('click', function () {
let text = document.getElementById('input').value;
let regex = /:/gi;
let new_text = text.replaceAll(regex, "\\:"); // fix
document.getElementById('input').value = new_text; // new code
});
</script>