现在的位置: 首页 > 综合 > 正文

单引号,双引号,javascript,HTML,转义字符

2014年04月29日 ⁄ 综合 ⁄ 共 954字 ⁄ 字号 评论关闭

在一个网页中的按钮,写onclick事件的处理代码,不小心写成如下:
<input>
IE提示出错后,再漫不经心地改为:
<input>
结果还是出错。
这时,我就想不通了,虽然我知道最直接的解决方法是写成这样:
<input>
但为什么javascript中的转义字符\没有效果了呢?

后来找到一段正常的代码:
<input>
这时才理解,原来这时,还是归于HTML的管辖范围,所以转义字符应该使用HTML的,而不是javascript的。两个双引号的做法是vbScript的,\"这种做法则是javascript的,而HTML的,则是用&quot;,此外还可以使用:"、'。

下面列出各种表达方法:
<html>
<body>
<input>
<input value="外单引号内单引号-错误" type="button" onclick='alert('OK');' /><br />
<input>
<input value="两个单引号-错误" type="button" onclick="alert(''OK'');" /><br />
<input>
<input value="\+单引号-错误" type="button" onclick="alert(\'OK\');" /><br />
<input>
<input value="外单引号内双引号-OK" type="button" onclick='alert("OK");' /><br />
<input>
<input value="HTML转义字符"(& # 3 4 ;)-OK" type="button" onclick="alert("OK");" /><br />
<input>
<input value="HTML转义字符"(& # x 2 2 ;)-OK" type="button" onclick="alert('OK');" /><br />
<input>
<input value="HTML转义字符&quot;(& q u o t ;)-OK" type="button" onclick="alert(&quot;OK&quot;);" /><br />
<input>

<input value="其它\\-错误" type="button" onclick="alert(\\"OK\\");" /><br />
<input>
</body>
</html>

抱歉!评论已关闭.