代码之家  ›  专栏  ›  技术社区  ›  harpax

如何在title属性中转义双引号

  •  169
  • harpax  · 技术社区  · 14 年前

    我正在尝试使用一个字符串,该字符串在锚定的title属性中包含双引号。到目前为止我试过这些:

    <a href=".." title="Some \"text\"">Some text</a>
    <!-- The title looks like `Some \` --!>
    

    <a href=".." title="Some &quot;text&quot;">Some text</a>
    <!-- The title looks like `Some ` --!>
    

    8 回复  |  直到 5 年前
        1
  •  306
  •   vsync    5 年前

    此变体-

    <a title="Some &quot;text&quot;">Hover me</a>

    是正确的,并按预期工作-您可以在呈现的页面中看到正常的引号。

        2
  •  27
  •   skinnedpanda Dave    4 年前

    下面是从 a cached page on archive.org

    &#060   |   <   less than sign
    &#064   |   @   at sign
    &#093   |   ]   right bracket
    &#123   |   {   left curly brace
    &#125   |   }   right curly brace
    &#133   |   …   ellipsis
    &#135   |   ‡   double dagger
    &#146   |   ’   right single quote
    &#148   |   ”   right double quote
    &#150   |   –   short dash
    &#153   |   ™   trademark
    &#162   |   ¢   cent sign
    &#165   |   ¥   yen sign
    &#169   |   ©   copyright sign
    &#172   |   ¬   logical not sign
    &#176   |   °   degree sign
    &#178   |   ²   superscript 2
    &#185   |   ¹   superscript 1
    &#188   |   ¼   fraction 1/4
    &#190   |   ¾   fraction 3/4
    &#247   |   ÷   division sign
    &#8221  |   ”   right double quote
    &#062   |   >   greater than sign
    &#091   |   [   left bracket
    &#096   |   `   back apostrophe
    &#124   |   |   vertical bar
    &#126   |   ~   tilde
    &#134   |   †   dagger
    &#145   |   ‘   left single quote
    &#147   |   “   left double quote
    &#149   |   •   bullet
    &#151   |   —   longer dash
    &#161   |   ¡   inverted exclamation point
    &#163   |   £   pound sign
    &#166   |   ¦   broken vertical bar
    &#171   |   «   double left than sign
    &#174   |   ®   registered trademark sign
    &#177   |   ±   plus or minus sign
    &#179   |   ³   superscript 3
    &#187   |   »   double greater-than sign
    &#189   |   ½   fraction 1/2
    &#191   |   ¿   inverted question mark
    &#8220  |   “   left double quote
    &#8212  |   —   dash
    
        3
  •  9
  •   Nathan Hinchey    6 年前

    越狱密码 &#34; 也可以用来代替 &quot; .

        4
  •  3
  •   Peter Mortensen icecrime    5 年前

    使用 &quot;

        5
  •  2
  •   Rodrigo Horta    12 年前

    它可以与来自 HTML Escape character list StringEscapeUtils.escapeHTML("Testing \" <br> <p>") 标题是 <a href=".." title="Test&quot; &lt;br&gt; &lt;p&gt;">Testing</a>

    它只对我有用,当我改变了StringEscapeUtils到 StringEscapeUtils.escapeJavascript("Testing \" <br> <p>") 它在每个浏览器中都能正常工作。

        6
  •  1
  •   Peter Mortensen icecrime    5 年前

    至少有一种情况下使用单引号是不起作用的,那就是如果您是从JavaScript“动态”创建标记的话。使用单引号包含字符串,然后标记中的任何属性的值都可以使用双引号。

        7
  •  1
  •   Peter Mortensen icecrime    5 年前

    也许您可以使用JavaScript来解决跨浏览器问题。它使用了一种不同的逃逸机制,显然你已经熟悉了:

    (reference-to-the-tag).title = "Some \"text\"";
    

    它并没有像现在人们所希望的那样严格区分HTML、JavaScript和CSS的功能,但是你需要让谁高兴呢?你不认识的用户或技术人员?