基于javascript如何传递特殊字符


Posted in Javascript onNovember 30, 2015

在没步入正轨之前,先给大家介绍JavaScript 特殊字符

你可以在 JavaScript 中使用反斜杠来向文本字符串添加特殊字符。

插入特殊字符

反斜杠用来在文本字符串中插入省略号、换行符、引号和其他特殊字符。

请看下面的 JavaScript 代码:

var txt="We are the so-called "Vikings" from the north."
document.write(txt)

在 JavaScript 中,字符串使用单引号或者双引号来起始或者结束。这意味着上面的字符串将被截为:We are the so-called。
要解决这个问题,就必须把在 "Viking" 中的引号前面加上反斜杠 (\)。这样就可以把每个双引号转换为字面上的字符串。

var txt="We are the so-called \"Vikings\" from the north."
document.write(txt)

现在 JavaScript 就可以输出正确的文本字符串了:We are the so-called "Vikings" from the north。

这是另一个例子:

document.write ("You \& me are singing!")

上面的例子会产生以下输出:

You & me are singing!

下面的表格列出了其余的特殊字符,这些特殊字符都可以使用反斜杠来添加到文本字符串中:

代码 输出
\' 单引号
\" 双引号
\& 和号
\\ 反斜杠
\n 换行符
\r 回车符
\t 制表符
\b 退格符
\f 换页符

背景:

今天在做一个任务时,用jquery的ajax传递一长串字符时,在后台地验证一直不成功,纠结时我了(那个字符串是随机生成地,特长).查了一上午,原来是我生成地字符串中有+号,而在js传递地时候,会理解为是连接字符用地,到了后台就将+号自动变为空格了,所以后台地字符串和前台生成地已经不一样了.

原因:

js后自动解析特殊字符,如+号为连接符,解析为空格,&为变量连接符,服务器端接受数据时&以后地数据不显示等等.

解决办法:

1、将字符放到form中,然后用js提交form表单到服务器.
2、将字符中地特殊字符替换成十六进制地字符,一些特殊字符与十六进制地对应关系:

+ 空格 / % & = #
%2b %20 %2f %3f %25 %26 &3d %23

str = str.replace(/\+/g,%2b); 将+号替换为十六进制

3、最简单地一种,使用encodeuricomponent()函数.

该方法不会对 ascii 字母和数字进行编码,也不会对这些 ascii 标点符号进行编码: - _ . ! ~ * ' ( ) .
其他字符(比如 :;/?:@&=+$,# 这些用于分隔 uri 组件地标点符号),都是由一个或多个十六进制地转义序列替换地.

jQuery ajax特殊字符参数

在做ajax登录时候遇到的一个问题,当传入参数含有特殊字符,比如:“$'#@”等。参数传递会有问题,无法正确获取。

$.ajax({
  url: '/user/login.ydd',
  type:'post',
  data:'name=abce&password=abcd&pwd',
  success: function(data){
  }
})

我要传入的是用户名为:abc,密码为abcd&pwd的用户登录。但传入后台获取参数,会被password=abcd当作一个参数传递,&这个特殊将pwd分开了作为另一个参数解析了。

解决方法,这时候就需要ajax另外一种传递参数的方式

$.ajax({
  url: '/user/login.ydd',
  type:'post',
  data:{'name':'abce','password':'abcd&pwd'},
  success: function(data){
 
  }
})
Javascript 相关文章推荐
Bootstrap创建可折叠的组件
Feb 23 Javascript
jQuery validate插件功能与用法详解
Dec 15 Javascript
jquery事件与绑定事件
Mar 16 Javascript
angular实现图片懒加载实例代码
Jun 08 Javascript
js input输入百分号保存数据库失败的解决方法
May 26 Javascript
layui从数据库中获取复选框的值并默认选中方法
Aug 15 Javascript
纯javascript前端实现base64图片下载(兼容IE10+)
Sep 14 Javascript
Jquery和CSS实现选择框重置按钮功能
Nov 08 jQuery
微信小程序实现单个卡片左滑显示按钮并防止上下滑动干扰功能
Dec 06 Javascript
javascript实现简易数码时钟
Mar 30 Javascript
逐行分析鸿蒙系统的 JavaScript 框架(推荐)
Sep 17 Javascript
小程序中手机号识别的示例
Dec 14 Javascript
基于js实现微信发送好友如何分享到朋友圈、微博
Nov 30 #Javascript
全面解析Bootstrap排版使用方法(文字样式)
Nov 30 #Javascript
javascript中eval和with用法实例总结
Nov 30 #Javascript
JavaScript基础篇(3)之Object、Function等引用类型
Nov 30 #Javascript
全面解析Bootstrap排版使用方法(标题)
Nov 30 #Javascript
javascript作用域链(Scope Chain)用法实例解析
Nov 30 #Javascript
Bootstrap每天必学之js插件
Nov 30 #Javascript
You might like
windows服务器中检测PHP SSL是否开启以及开启SSL的方法
2014/04/25 PHP
PHP调用MySQL存储过程并返回值的方法
2014/12/26 PHP
php版微信公众账号第三方管理工具开发简明教程
2016/09/23 PHP
php微信开发之自定义菜单完整流程
2016/10/08 PHP
Laravel5.4框架使用socialite实现github登录的方法
2019/03/20 PHP
安装docker和docker-compose实例详解
2019/07/30 PHP
DOM和XMLHttpRequest对象的属性和方法整理
2012/01/04 Javascript
使用upstart把nodejs应用封装为系统服务实例
2014/06/01 NodeJs
让angularjs支持浏览器自动填表
2014/11/10 Javascript
Jquery中CSS选择器用法分析
2015/02/10 Javascript
JavaScript获取网页中第一个链接ID的方法
2015/04/03 Javascript
JavaScript实现自动对页面上敏感词进行屏蔽的方法
2015/07/27 Javascript
jQuery EasyUI API 中文帮助文档和扩展实例
2016/08/01 Javascript
Angular设置title信息解决SEO方面存在问题
2016/08/19 Javascript
Vue服务端渲染和Vue浏览器端渲染的性能对比(实例PK )
2017/03/31 Javascript
JavaScript函数中的this四种绑定形式
2017/08/15 Javascript
判断文字超过2行添加展开按钮,未超过则不显示,溢出部分显示省略号
2019/04/28 Javascript
JS使用正则表达式提交页面验证的代码
2019/10/16 Javascript
Python ValueError: invalid literal for int() with base 10 实用解决方法
2015/06/21 Python
详解Python开发中如何使用Hook技巧
2017/11/01 Python
python并发2之使用asyncio处理并发
2017/12/21 Python
python中的json总结
2018/10/11 Python
Python 获取指定文件夹下的目录和文件的实现
2019/08/30 Python
python从内存地址上加载python对象过程详解
2020/01/08 Python
tensorflow实现将ckpt转pb文件的方法
2020/04/22 Python
Python中pass的作用与使用教程
2020/11/13 Python
Python3 用matplotlib绘制sigmoid函数的案例
2020/12/11 Python
Matplotlib animation模块实现动态图
2021/02/25 Python
浅析HTML5的WebSocket与服务器推送事件
2016/02/19 HTML / CSS
蒙蒂塞罗商店:Monticello Shop
2018/11/25 全球购物
教你怎样写好自我评价
2013/10/05 职场文书
市场营销专业毕业生求职信
2014/03/26 职场文书
小学运动会开幕词
2015/01/28 职场文书
民间借贷纠纷答辩状
2015/08/03 职场文书
日本读研:怎样写好一篇日本研究计划书?
2019/07/15 职场文书
php双向队列实例讲解
2021/11/17 PHP