【问题标题】:Passing double quotes to Jscript将双引号传递给 Jscript
【发布时间】:2011-02-23 09:35:40
【问题描述】:

insertText 是接受两个字符串参数的 java 脚本

我需要传递两个字符串

第一个参数:

<img src="

秒

 ">

我只是不知道如何将双引号作为参数传递

这行得通

<a onClick="insertText('<em>', '</em>'); return false;">Italic</a>

这不是

<a onClick="insertText('<img src=/"', '/">'); return false;">Image</a>

打印'); return false;"&gt;Image

【问题讨论】:

    标签: html syntax javascript


    【解决方案1】:

    你想使用 \ 而不是 /

    【讨论】:

      【解决方案2】:

      JavaScript 的转义字符是 \,而不是 /。所以试试这个:

      <a onClick="insertText('<img src=\"', '\">'); return false;">Image</a>
      

      更新:

      上面的解决方案不起作用,因为双引号“属于” HTML 而不是 JavaScript,所以我们无法在 JavaScript 代码中对其进行转义。

      改用这个:

      <a onClick="insertText('<img src=\'', '\'>'); return false;">Image</a> // --> <img src='...'>
      

      或

      <a onClick='insertText("<img src=\"", "\">"); return false;'>Image</a> // --> <img src="...">
      

      既然你用的是jQuery,那你为什么不用jQuery的方式呢?

      insertText = function(a, b) {
          // your insertText implementation...
      };
      
      $('a').click(function() {  // use the right selector, $('a') selects all anchor tags
          insertText('<img src="', '">');
      });
      

      使用此解决方案,您可以避免引号问题。

      这是一个工作示例:http://jsfiddle.net/jcDMN/

      【讨论】:

        【解决方案3】:

        黄金法则是颠倒引号,这意味着我在双引号内使用单引号 ' ,反之亦然。

        此外,您应该使用反斜杠符号来转义特殊字符,例如 ' 和 "。

        例如, 以下命令在应用上述规则时应该可以工作...

        <a onClick="insertText('<em>', '</em>'); return false;">Italic</a>
        

        或

        <a onClick='insertText("<em>", "</em>"); return false;'>Italic</a>
        

        或

        <a onClick="insertText('<img src=\"', '\">'); return false;">Image</a>
        

        或

        <a onClick='insertText("<img src=\'", "\'>"); return false;'>Image</a>
        

        希望对你有帮助...

        【讨论】:

        • 其实这是你问题的最佳答案,而不是 Jquery 或任何其他,只需反转引号就可以了
        【解决方案4】:

        你需要逃避它。

        &lt;a onClick="insertText('&lt;img src=\"', '\"&gt;'); return false;"&gt;Image&lt;/a&gt;

        【讨论】:

          猜你喜欢
          • 2017-03-13
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-12-24
          • 2013-02-02
          • 2018-03-26
          • 2017-10-31
          相关资源
          最近更新 更多