【问题标题】:How to get a Clean String in Javascript?如何在 Javascript 中获得干净的字符串?
【发布时间】:2010-04-27 08:18:10
【问题描述】:

我有一个长字符串。有一些德语字符和许多新行标签等.. 在选择框中,用户可以选择文本,更改时我会这样做

document.getElementById('text').value=this.value;

但这失败了。我只是在 JavaScript 中收到 "unterminated string literal" 作为错误。

我想我应该清理字符串。

我如何在 JavaScript 中做到这一点?

【问题讨论】:

  • 我不认为字符串值是这里的问题,我认为您的脚本中有一些纯语法错误。
  • 语法错误?但为什么我得到一个未终止的字符串文字?
  • @streetparade: 使用var x = 'hello; 可能会给你同样的错误,因为字符串不会在任何地方结束,因为没有右撇号,即'
  • 如果你想清理字符串,只需分配空值。 document.getElementById('text').value="";
  • 是的,这可能是问题所在,但在该字符串中也有一些 ' 或 "

标签: javascript regex string


【解决方案1】:

不是因为那个代码,你的 javascript 文件中某处存在语法错误。

例如,在您之前的一个问题answer

 alert("yes link clicked); 

您可以看到,在clicked 之后缺少",这可能导致unterminated string literal 错误。像这样修复它

 alert("yes link clicked"); 

【讨论】:

    【解决方案2】:

    由于我无法从您的代码中判断,您可能需要检查 this.value 中的 this 指的是什么,例如使用alert("debug: " + this.value)

    除此之外,您可能还想使用encodeURI() 将变音符号和其他特殊字符转换为十六进制表示法。如果您页面的content-type 设置为UTF-8,则特殊字符将正确显示。

    【讨论】:

      猜你喜欢
      • 2019-02-10
      • 1970-01-01
      • 2019-09-27
      • 2016-09-09
      • 2020-12-16
      • 2021-12-04
      • 1970-01-01
      • 2017-01-08
      • 1970-01-01
      相关资源
      最近更新 更多