我正在开发一个Applescript脚本,它执行一些Javascript,将一些HTML添加到我在本地计算机上查看的网页上。 Applescript正在将HTML文件读入字符串并自动转义HTML中的所有双引号,如下所示:\“
但Javascript不喜欢包含所有转义双引号的字符串:
将programHTML设置为“\”嗨孩子!\“” - 这有效!
将programHTML设置为“\”Hi \“kid!\”“ - 这不是!
我觉得我必须在这里遗漏一些非常基本的东西。我扫描并浏览了许多帖子,但没有看到解决这个特定问题的任何内容。
[在本来有用的评论之后加上这个我有点明确了]:
当它到达Javascript时,没有比最终报价更多的内容。这不起作用:
将programHTML设置为“\”Howdy,“kid!\”,是你的“妈妈”家?\“”
我或许应该提一下,这个字符串会变成一行,看起来像这样:
执行前窗javascript“codeDIV.innerHTML =”&的标签1 programHTML& “;”
答案 0 :(得分:2)
必须始终在对中使用双引号。这就是为什么你的第二种方法不起作用的原因。
将programHTML设置为 " \"嗨孩子!\"" - 这很有效!
- 因为它会产生"Hi kid"
- 2个双引号
将programHTML设置为 " \"嗨\" kid!\"" - 这不是!
因为它会产生"Hi "kid!"
- 3个双引号
答案 1 :(得分:1)
将外部引号更改为单引号,以便它们不会干扰内部双引号。如果你这样做,你根本不必担心转义双引号。
//using the single quote in the beginning and end
console.log('"Howdy, "kid!", is your "mom" home?"');
读作"你好,"孩子!",是你的妈妈"家"