JS中处理单个反斜杠(即转义字符的处理)
问题来源:在表单的<input>标签中对输入的字符串进行大写转换。一不小心输入了反斜杠 \
如下图所示:

输入 chn\ 的时候,在 IE8 下弹出一个js错误。(在实际的项目的表单元素中遇到了,单独这样拿出来测试的时候又不弹出错误。也很是焦灼)
索性就写了个办法暂时解决了这个问题。也符合实际的需求。
测试代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<script type="text/javascript" src="jquery/jquery-1.7.2.js"></script>
<script type="text/javascript" src="jquery/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(function() {
$("#trans").keyup(function() {
if (this.value.indexOf("\\") >= 0) {
this.value = "";
}
this.value = this.value.toUpperCase();
});
});
</script>
<body>
<h1>测试反斜杠 \</h1>
测试转换大写:
<input id="trans" />
</body>
</html>
在网上查找相关资料的时候,看到不少人遇到 反斜杠 \ (转义字符) 的问题,诸如以下参考链接。
在单独拎出来做这个测试的时候,发现JQuery的高版本(3.2.1) 居然无效,然后是换成Jquery的1.7.2版本,亲测有效。
然后又了解到
目前jQuery有三个大版本:
1.x:兼容  ie  6  7  8,使用最为广泛的,官方只做BUG维护,功能不再新增。因此一般项目来说,使用1.x版本就可以了,最终版本:1.12.4
(2016年5月20日)
2.x:不兼容  ie  6  7  8,很少有人使用,官方只做BUG维护,功能不再新增。如果不考虑兼容低版本的浏览器可以使用2.x,最终版本:2.2.4
(2016年5月20日)
3.x:不兼容 ie 6 7 8,只支持最新的浏览器。除非特殊要求,一般不会使用3.x版本的,很多老的jQuery插件不支持这个版本。目前该版本是官方主要更新维护的版本。
1.X大版本下,细分版本非常多,各个版本的函数都会有一定的差异。网上看到的很多教程大多是1.x版本的。
---------
今天遇到的小问题,也引申了很多其它问题。
为此记录。
2017/10/26
参考资料:
1.http://blog.csdn.net/shi_yi_fei/article/details/51202209
2.http://blog.csdn.net/xufeng0991/article/details/46755825
3.http://www.jb51.net/article/60372.htm
4.Jquery版本参考:http://www.jb51.net/article/110228.htm
JS中处理单个反斜杠(即转义字符的处理)的更多相关文章
- java中从含反斜杠路径截取文件名的方法
		例如:获取到的文件路径为C:\Documents and Settings\Leeo\My Documents\logo.gif现在想要取得图片的名称logo.gif,我们知道反斜杠“\”是转义字符, ... 
- 关于Python中正则表达式的反斜杠问题
		之前总是搞不明白正则表达式中的反斜杠的问题.今天经过查阅资料终于搞明白了. 其中最重要的一点就是Python自己的字符串中定义的反斜杠也是转义字符,而正则表达式中的反斜杠也是转义字符,所以正则表达式中 ... 
- Java正则中"\\\\"表示普通反斜杠
		Java中"\"用于转义字符,"\\"表示普通无转义功能的反斜杠. 如果将字符串当做正则表达式来解析,那么"\\"也有了特殊意义,它与其后的 ... 
- JS正则四个反斜杠的含义
		我们首先来看如下代码,在浏览器中输出的是什么? // 在浏览器中输出的 console.log('\\'); // 输出 \ console.log('\\\\'); // 输出 \\ 一:js正则直 ... 
- JAVA正则表达式中如何匹配反斜杠 \
		有时候我们需要匹配反斜杠,你可能会把对应的正则表达式写成 "\\" 然后可能会有如下输出: Exception in thread "main" java.ut ... 
- MySQL中如何插入反斜杠,反斜杠被吃掉,反斜杠转义
		问题描述:mysql中带有反斜杠的内容入库后,发现反斜杠无故失踪了(俗话说被吃掉了) 例:插入insert into tb('url') values('absc\eeee'); 结果数据库里的内容是 ... 
- 在C++中怎么输入反斜杠“ \ ”
		在C++编程中有时就会遇到有些符号不能直接输入,像反斜杠“ \ ",如果直接输入会出现:错误的终止了宏调用的错误. 这时,我们就需要把这些符号转义一下, 例如: CString str = ... 
- print语句中逗号(,)和反斜杠(\)的区别
		逗号结尾: 禁止输出换行反斜杠结尾:强制输出换行 >>> print ('A','B') #用一个逗号结尾就可以禁止输出换行 A B >>> print ('A ... 
- python 怎样使用单个反斜杠\
		path2 = "c:\\windows\\temp\\readme.txt" path2:用一个"\"取消第二个"\"的特殊转义作用,即为 ... 
随机推荐
- 深入浅出数据结构C语言版(17)——希尔排序
			在上一篇博文中我们提到:要令排序算法的时间复杂度低于O(n2),必须令算法执行"远距离的元素交换",使得平均每次交换减少不止1逆序数. 而希尔排序就是"简单地" ... 
- Linux-hexdump命令调试event驱动—详解(13)
			hexdump: 查看文件的内容,比如二进制文件中包含的某些字符串,通常用来调试驱动用 1.调试 键盘驱动 讲解 当我们insmod挂载了键盘驱动后,找到键盘驱动被放在event1设备里, 此时没有按 ... 
- Windbg调试(关于句柄表的获取,32位)
			今天利用Windbg(x86)进行了获得句柄表的调试,从中获益良多,对调试步骤和按键又一次进行了熟悉,对于句柄表页的概念更是得到了进一步的清晰认识.windbg调试和句柄表不熟悉的朋友可以借鉴我的调试 ... 
- Java内部类的总结
			内部类是指在一个外部类的内部再定义一个类.类名不需要和文件夹相同. 内部类分为: 成员内部类.局部内部类.静态嵌套类.匿名内部类 . 1.成员内部类 成员内部类是最普通的内部类,它的定义为位于另一个类 ... 
- JVM锁机制之synchronized
			概述: synchronized是java用于处理多线程同步的一个关键字,用于标记一个方法/代码块,使之成为同步方法/同步块. 用synchronized可以避免多线程处理时的竞态条件问题. 相关概念 ... 
- 来自projecteuler.net网站的练习题1
			0.题目如下: By listing the first six prime numbers: 2, 3, 5, 7, 11, and 13, we can see that the 6th prim ... 
- [python学习笔记] 开篇
			今天开始学习markdown,立贴为证. 平均一天一小时.两个月先学完基础. 所有的帖子只为了学习记录,有不对的请提出,轻吐槽 
- ASP.NET Core 认证与授权[2]:Cookie认证
			由于HTTP协议是无状态的,但对于认证来说,必然要通过一种机制来保存用户状态,而最常用,也最简单的就是Cookie了,它由浏览器自动保存并在发送请求时自动附加到请求头中.尽管在现代Web应用中,Coo ... 
- VC++:创建,调用Win32动态链接库
			VC++:创建,调用Win32动态链接库 概述 DLL(Dynamic Linkable Library)动态链接库,Dll可以看作一种仓库,仓库中包含了可以直接使用的变量,函数或类.仓库的发展史经历 ... 
- linux free命令解读
			$ free -m total used free shared buffers cached Mem: 1002 769 232 0 62 421 -/+ buffers/cache: 286 71 ... 
