浅析Js中的单引号与双引号问题


Posted in Javascript onNovember 06, 2013

单引号和双引号其实没啥区别,看你自己习惯了

<input type="button" onclick="alert("1")">-------------------不正确
<input type="button" onclick="alert('1')">-------------------正确

双引号中再用双引号要这样:
var str = "abc\"def\"ghi"
用反斜杠来禁止解析双引号。

下面是我摘录的,希望对你有用:

在一个网页中的按钮,写onclick事件的处理代码,不小心写成如下:
<input value="Test" type="button" onclick="alert(""OK"");" />

IE提示出错后,再漫不经心地改为:
<input value="Test" type="button" onclick="alert(\"OK\");" />

结果还是出错。
这时,我就想不通了,虽然我知道最直接的解决方法是写成这样:
<input value="" type="button" onclick="alert('OK');" />
但为什么javascript中的转义字符\没有效果了呢?

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

下面列出各种表达方法:

<html>
<body>
<input value="外双引号内双引号-错误" type="button" onclick="alert("OK");" /><br />
<input value="外单引号内单引号-错误" type="button" onclick='alert('OK');' /><br />
<input value="两个双引号-错误" type="button" onclick="alert(""OK"");" /><br />
<input value="两个单引号-错误" type="button" onclick="alert(''OK'');" /><br />
<input value="\+双引号-错误" type="button" onclick="alert(\"OK\");" /><br />
<input value="\+单引号-错误" type="button" onclick="alert(\'OK\');" /><br />
<input value="外双引号内单引号-OK" type="button" onclick="alert('OK');" /><br />
<input value="外单引号内双引号-OK" type="button" onclick='alert("OK");' /><br />
<input value="外部不使用引号-OK" type="button" onclick=alert('OK');alert("OK"); /><br />
<input value="HTML转义字符"(& # 3 4 ;)-OK" type="button" onclick="alert("OK");" /><br />
<input value="HTML转义字符'(& # 3 9 ;)-OK" type="button" onclick="alert('OK');" /><br />
<input value="HTML转义字符"(& # x 2 2 ;)-OK" type="button" onclick="alert('OK');" /><br />
<input value="HTML转义字符'(& # x 2 7 ;)-OK" type="button" onclick="alert('OK');" /><br />
<input value="HTML转义字符"(& q u o t ;)-OK" type="button" onclick="alert("OK");" /><br />
<input value="HTML转义字符'(& a p o s ;)-IE错误" type="button" onclick="alert('OK');" /><br />
<input value="其它\\-错误" type="button" onclick="alert(\\"OK\\");" /><br />
<input value="其它\& # 3 4 ;-错误" type="button" onclick="alert(\"OK\");" /><br />
</body>
</html>
Javascript 相关文章推荐
可以把编码转换成 gb2312编码lib.UTF8toGB2312.js
Aug 21 Javascript
Exitjs获取DataView中图片文件名
Nov 26 Javascript
jQuery源码分析-02正则表达式 RegExp 常用正则表达式
Nov 14 Javascript
jquery win 7透明弹出层效果的简单代码
Aug 06 Javascript
javascript里绝对用的上的字符分割函数总结
Jul 31 Javascript
jQuery通过控制节点实现仅在前台通过get方法完成参数传递
Feb 02 Javascript
纯Javascript实现ping功能的方法
Mar 20 Javascript
jQuery Mobile 和 Kendo UI 的比较
May 05 Javascript
socket.io学习教程之深入学习篇(三)
Apr 29 Javascript
jQuery返回定位插件详解
May 15 jQuery
微信小程序上传图片功能(附后端代码)
Jun 19 Javascript
javascript实现函数柯里化与反柯里化过程解析
Oct 08 Javascript
表单元素与非表单元素刷新区别详细解析
Nov 06 #Javascript
js onclick事件传参讲解
Nov 06 #Javascript
jquery validation验证身份证号,护照,电话号码,email(实例代码)
Nov 06 #Javascript
css样式标签和js语法属性区别
Nov 06 #Javascript
jquery 设置元素相对于另一个元素的top值(实例代码)
Nov 06 #Javascript
jQuery中$.fn的用法示例介绍
Nov 05 #Javascript
可选择和输入的下拉列表框示例
Nov 05 #Javascript
You might like
ob_start(),ob_start('ob_gzhandler')使用
2006/12/25 PHP
php sprintf()函数让你的sql操作更安全
2008/07/23 PHP
php面向对象全攻略 (四)构造方法与析构方法
2009/09/30 PHP
php post大量数据时发现数据丢失问题解决方法
2015/06/20 PHP
ThinkPHP在Cli模式下使用模板引擎的方法
2015/09/25 PHP
微信JSSDK分享功能图文实例详解
2019/04/08 PHP
动态创建的表格单元格中的事件实现代码
2008/12/30 Javascript
JavaScript中Number.MAX_VALUE属性的使用方法
2015/06/04 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记8)
2015/12/24 Javascript
JS实现上下左右对称的九九乘法表
2016/02/22 Javascript
jQuery Chart图表制作组件Highcharts用法详解
2016/06/01 Javascript
JavaScript提高网站性能优化的建议(二)
2016/07/24 Javascript
Query常用DIV操作获取和设置长度宽度的实现方法
2016/09/19 Javascript
JS中正则表达式全局匹配模式 /g用法详解
2017/04/01 Javascript
JavaScript ES6常用基础知识总结
2019/02/09 Javascript
JavaScript编码小技巧分享
2020/09/17 Javascript
vue打开子组件弹窗都刷新功能的实现
2020/09/21 Javascript
Python实现控制台输入密码的方法
2015/05/29 Python
python万年历实现代码 含运行结果
2017/05/20 Python
浅谈Python接口对json串的处理方法
2018/12/19 Python
Python进阶之全面解读高级特性之切片
2019/02/19 Python
Python打开文件、文件读写操作、with方式、文件常用函数实例分析
2020/01/07 Python
python 数据分析实现长宽格式的转换
2020/05/18 Python
解决redis与Python交互取出来的是bytes类型的问题
2020/07/16 Python
Python自动发送和收取邮件的方法
2020/08/12 Python
Python3利用scapy局域网实现自动多线程arp扫描功能
2021/01/21 Python
通信工程专业毕业生推荐信
2013/12/25 职场文书
预备党员党课思想汇报
2014/01/13 职场文书
家长对学生的评语
2014/04/18 职场文书
期中考试复习计划
2015/01/19 职场文书
成本会计岗位职责
2015/02/03 职场文书
教师年度考核个人总结
2015/02/12 职场文书
golang判断key是否在map中的代码
2021/04/24 Golang
Python实现视频中添加音频工具详解
2021/12/06 Python
Golang解析JSON对象
2022/04/30 Golang
Python Flask实现进度条
2022/05/11 Python