【发布时间】:2016-07-11 13:03:45
【问题描述】:
我有一个输入字段,用户可以在其中输入所有内容(""、'')。有什么办法可以在不知道它们的类型的情况下转义引号吗?我的意思是如果用户输入 ("test"test'test") 我如何将它存储在 js 变量中?任何建议都可以帮助我。
例如,我希望它能够正常工作:
<!DOCTYPE HTML>
<html>
<body>
<script>
var myVar = "test"test'test";
console.log(myVar.replace('\"', '\\"'));
</script>
</body>
</html>
【问题讨论】:
-
var yourString = yourInput.value;— 我就是这样做的。没什么特别的。 你会怎么做呢? -
这与输入字段有什么关系呢?您可以像往常一样使用反斜杠转义任何内容:
var myVar = "test\"test'test";。 -
引号只需要在字符串literal中转义,而不是在用户输入的内容中。
-
@user5783530 然后请解释一下用户将如何输入数据以及这些数据当前是如何传递的,以及它在哪里传递的。据我了解这个问题,第一条评论应该已经是显而易见的解决方案了。
-
@user5783530 但您实际上并没有在每个引号周围有空格,对吧?另外,请注意
'"'和'\"'被解析为完全相同的内容。您可能想要的是'\\"',它本身会转义反斜杠。
标签: javascript escaping