单引号和双引号其实没啥区别,看你自己习惯了
复制代码 代码如下:
<input type="button"1")">-------------------不正确
<input type="button">-------------------正确
双引号中再用双引号要这样:
var str = "abc\"def\"ghi"
用反斜杠来禁止解析双引号。
下面是我摘录的,希望对你有用:
在一个网页中的按钮,写onclick事件的处理代码,不小心写成如下:
复制代码 代码如下:
<input value="Test" type="button""OK"");" />
IE提示出错后,再漫不经心地改为:
复制代码 代码如下:
<input value="Test" type="button"OK\");" />
结果还是出错。
这时,我就想不通了,虽然我知道最直接的解决方法是写成这样:
复制代码 代码如下:
<input value="" type="button" />
但为什么javascript中的转义字符\没有效果了呢?
后来找到一段正常的代码:
复制代码 代码如下:
<input value="Test" type="button"OK");" />
这时才理解,原来这时,还是归于HTML的管辖范围,所以转义字符应该使用HTML的,而不是javascript的。两个双引号的做法是vbScript的,\"这种做法则是javascript的,而HTML的,则是用",此外还可以使用:"、'。
下面列出各种表达方法:
复制代码 代码如下:
<html>
<body>
<input value="外双引号内双引号-错误" type="button"OK");" /><br />
<input value="外单引号内单引号-错误" type="button"OK');' /><br />
<input value="两个双引号-错误" type="button""OK"");" /><br />
<input value="两个单引号-错误" type="button" /><br />
<input value="\+双引号-错误" type="button"OK\");" /><br />
<input value="\+单引号-错误" type="button" /><br />
<input value="外双引号内单引号-OK" type="button" /><br />
<input value="外单引号内双引号-OK" type="button" /><br />
<input value="外部不使用引号-OK" type="button" onclick=alert('OK');alert("OK"); /><br />
<input value="HTML转义字符"(& # 3 4 ;)-OK" type="button"OK");" /><br />
<input value="HTML转义字符'(& # 3 9 ;)-OK" type="button" /><br />
<input value="HTML转义字符"(& # x 2 2 ;)-OK" type="button" /><br />
<input value="HTML转义字符'(& # x 2 7 ;)-OK" type="button" /><br />
<input value="HTML转义字符"(& q u o t ;)-OK" type="button"OK");" /><br />
<input value="HTML转义字符'(& a p o s ;)-IE错误" type="button" /><br />
<input value="其它\\-错误" type="button"OK\\");" /><br />
<input value="其它\& # 3 4 ;-错误" type="button"OK\");" /><br />
</body>
</html>
您可能感兴趣的文章: