html html点 如何在标题属性中跳出双引号




html点 (7)

它可以与HTML Escape字符列表中的任何字符一起使用,但是我也遇到了与Java项目相同的问题。 我使用了StringEscapeUtils.escapeHTML("Testing \" <br> <p>") ,标题为<a href=".." title="Test&quot; &lt;br&gt; &lt;p&gt;">Testing</a> <a href=".." title="Test&quot; &lt;br&gt; &lt;p&gt;">Testing</a> <a href=".." title="Test&quot; &lt;br&gt; &lt;p&gt;">Testing</a>

当我将StringEscapeUtils更改为StringEscapeUtils.escapeJavascript("Testing \" <br> <p>")并且它在每个浏览器中都有效时,它只适用于我。

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

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

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

请注意,使用单引号不是一个选项。


您可以使用此PHP代码来列出特殊字符...

<table border="1"><?php for($i=33;$i<9000;$i++)echo "<tr><td>&#38;#$i;<td>&#".$i.";"; ?></table>

编辑:链接似乎已经死了,所以这里是从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 excallamation 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 greather than sign   »   
&#189   |   fraction 1/2    ½   
&#191   |   inverted question mark  ¿   
&#8220  |   left double quote   “   
&#8212  |   dash    —   

/编辑

给这个镜头

HTML转义字符列表。

这是所有这些角色的重要参考。


使用&quot; 是做到这一点的方式,我试过了你的第二个代码片段,它可以在Firefox和IE上运行。


至少有一种情况,使用单引号将不起作用,那就是如果您正在从Javascript创建“即时”标记。 您使用单引号来包含字符串,然后标记中的任何属性都可以使用双引号。


是否&#34; 而不是&quot; 工作?


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

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

它没有严格按照人们希望你现在这样的方式来分离HTML,JS和CSS的功能,但是你需要让谁开心? 您不认识的用户或技术人员?





quotes