【问题标题】:Escaping quotes in javascript variable placed in function call转义放置在函数调用中的javascript变量中的引号
【发布时间】:2017-06-20 20:34:02
【问题描述】:

我的 html 中有一个编辑图像:

 onclick="javascript:editBook(author,title)"

author 和 title 是包含来自 PHP 脚本的值的变量。而editBook是一个打开一个新窗口的功能,可以在其中编辑书籍的作者和标题。

title 可能包含带引号的标题,当标题包含引号时,单击时会导致“Uncaught SyntaxError: Invalid or unexpected token”错误。

我该怎么做才能避开书名中的引号?

除了引号之外,书名还可以包含其他符号,例如 &。我怎么也能逃脱呢?

谢谢!

【问题讨论】:

    标签: javascript jquery escaping quotes


    【解决方案1】:

    在 PHP 脚本中:

    function javascript_escape($string) 
    { 
        return str_replace("\n", '\n', str_replace('"', '\"', addcslashes(str_replace("\r", '', (string)$string), "\0..\37'\\"))); 
    } 
    

    【讨论】:

      【解决方案2】:

      您需要使用反斜杠字符\ 上面的键输入

      参考http://www.w3schools.com/js/js_strings.asp

      【讨论】:

      • 我看不到任何关于变量内引号以及如何转义它们的章节。如果你找到它请告诉我。谢谢
      • 按照您编辑的答案,您似乎想要连接。因此,如果作者和标题是变量,请执行此操作onclick="javascript:editBook(" + author + "," + title + ")"
      猜你喜欢
      • 2013-03-30
      • 2011-11-04
      • 1970-01-01
      • 2019-09-25
      • 2012-07-28
      • 2013-04-06
      • 1970-01-01
      • 2016-12-04
      • 2012-02-03
      相关资源
      最近更新 更多