在下面的表单中,如果我尝试使用.replace()替换反斜杠,则会导致错误:
<form>
<input id="plop" type="text" value="" style="width:500px;">
<button id="button" type="button" value="" onclick="pouet()">Plop</button>
</form>
<script>
function pouet()
{
var a1 =$("#plop").val().replace(/\\/g,'/');
document.write(a1); // added for testing
}
</script>
ReferenceError:找不到变量:pouet
如果我尝试替换另一个角色(如 - 或/),则效果很好。 似乎第一次反斜杠\并没有逃过第二次......我不明白为什么。
您是否知道如何全局替换var a1中的每个反斜杠? THX
答案 0 :(得分:1)
$(document).ready(function() {
$("#button").click(function(e) {
e.preventDefault();
var a1 = $("#plop").val().replace(/\\/g,"/");
$("#plop").val(a1);
$.post("path/to/php/script", {a1:a1}, function(data) {
// do something with php return data
});
});
});
如果你只是在用户点击一个按钮时运行一些代码,甚至不用费心去编写自定义函数。
答案 1 :(得分:1)
感谢@sln,使用/ \ x5c / g代替实际的正则表达式