问题场景:今天在测试自己手上的页面功能时,发现一个小bug,在用ajax向后台发数据时,只要参数中出现一些特殊字符,控制台会报错http 400的问题,其实就是特殊字符服务器不能解析。好了,问题是找到了,但是改如何解决勒!首先想到的就是把特殊字符进行编码在传递,但是自己写检测特殊字符函数代码时发现,这要检测的特殊字符数不胜数,完全正则不过来。上网搜了一下,发现有一个现成的方法:encodeURIComponent();放在代码上跑一...
在使用ajax进行留言的时候,出现了一个问题.因为留言内容写完之后,通过ajax提交内容,同时使用js把留言的内容添加到页面上来.浏览留言的时候也是通过ajax请求,然后再显示的.这样,如果有人在留言里写入了js语句,这结语句都会被执行.解决办法就是对这些特殊字符进行转义再显示出来.如果在jsp中使用jstl标签,就很简单了.直接使用<c:out value=”${r.content}” />这样就行了,会自动进行转义,其中省略了参数escapeXML=”true”,这是默认的...
当我在做登陆页面的时候,常常会用到ajax方法来检测用户信息所填写的内容是否符合规范要求。一开始,为了简单明了,快速实现功能,在使用jQuery时,是这样写的:$.ajax({url : "{:U(‘public/checklogin‘)}",cache : false,type : ‘POST‘,dataType : ‘json‘,data : ‘username=‘+$(‘#username‘).val()+‘&password=‘+$(‘#password‘).val()+‘&verify=‘+$(‘#code‘).val(),success : function(e){if ( e.status == 0 )...
使用jQuery ajax向后台传递参数para=1+1时后台接收到的参数为para=1 1,解决方案是 使用json传递,代码如下。var url = "/test/check";$.ajax({type: "post",url: url,
// data: "para=1+1", data为字符串时 后台接收到的参数为 1 1data: {"para":1+1}, // data为json数据时 后台接收到的参数为 1+1cache: false,async : false,dataType: "json",success: function (data ,textStatus, jqXHR){if("true"==data.flag){alert("...
下面我就为大家带来一篇ajax传送参数含有特殊字符的快速解决方法。希望对大家有所帮助。JQuery AJAX中遇到这样一个问题,参数中包含特殊字符,比如&#@等, 这时执行AJAX的时候就会出问题,因为所传的参数变了.看个示例就明白:方案一:上面执行的ajax就是异步删除一个name为 11&abd 的数据 当请求到ajax.ashx页面时,我们获取到的name参数为11 执行操作后会发现其实删除了name 为 11的数据,而没有删除 name 为 11&abc 的数据 这是由于有&...
这篇文章给大家介绍了Ajax传递的数据包含特殊字符时的解决方法,需要的朋友参考下吧问题描述如下,对含有特殊字符的text进行JSON封装,通过Ajax传递,var data = {"Id": id, "text": text};在后台无法进行数据接收。解决方案将换为:req.setRequestHeader("Content-type","application/json; charset=utf-8");后台接受数据:这样就可以正确的进行文本的接收啦~上面是我整理给大家的,希望今后会对大家有帮助。相关文章:配置Chrome支...
在用jquery加ajax写的时候,发现如果传进去的数据包含&则无法获取数据而+号的话就会被判定为空,解决办法就是使用encodeURIComponent()函数对要发送的数据进行编码.
function ajax() {$val = encodeURIComponent($('#note').val());$.ajax({type: 'post',url: 'xxx.php',data: 'txt=' + $val,success: function(data) {$("#remove").empty();$("#main").html(data);$(".chg_area").hide();}});
};这样就能传&+这些特殊符号了
方案一:
$.ajax({url: '/ashx/ajax.ashx',type: 'post',data: 'option=delete&name=11&adb, success: function (data) { if (data != 'error ') { } } }); '上面执行的ajax就是异步删除一个name为 11&abd 的数据 当请求到ajax.ashx页面时,我们获取到的name参数为11 执行操作后会发现其实删除了name 为 11的数据,而没有删除 name 为 11&abc 的数据 这是由于有&特殊字符,把以前的俩个参数变成了三个参数 option,name,abc 这时就需要...
在使用ajax进行留言的时候,出现了一个问题.因为留言内容写完之后,通过ajax提交内容,同时使用js把留言的内容添加到页面上来.浏览留言的时候也是通过ajax请求,然后再显示的.这样,如果有人在留言里写入了js语句,这结语句都会被执行.解决办法就是对这些特殊字符进行转义再显示出来.如果在jsp中使用jstl标签,就很简单了.直接使用这样就行了,会自动进行转义,其中省略了参数escapeXML=”true”,这是默认的.所以说在显示这些用户...
在做ajax登录时候遇到的一个问题,当传入参数含有特殊字符,比如:“$#@”等。参数传递会有问题,无法正确获取。
$.ajax({
? ? url: '/user/login.ydd',
? ? type:'post',
? ? data:'name=abce&password=abcd&pwd',
? ? success: function(data){? ? }
})我要传入的是用户名为:abc,密码为abcd&pwd的用户登录。但传入后台获取参数,会被password=abcd当作一个参数传递,&这个特殊将pwd分开了作为另一个参数解析了。解决方法,这时...
在jQuery中,我们通常利用$.ajax或$.post进行数据传递处理,但这里通常不能传递特殊字符,如:“1、准备页面和控制端代码页面代码如下:
$(function() {$("#btnSet").click(function() {var a = $("#txtValue").val();var data = { Name: a };alert(data);$.ajax({url: '@Url.Action("MyTest")',type: 'post',dataType: 'json',data: data,});});});Index后台代码如下:
public ActionResult MyTest(StudentInfo stu)
{return...
在使用ajax进行留言的时候,出现了一个问题.因为留言内容写完之后,通过ajax提交内容,同时使用js把留言的内容添加到页面上来.浏览留言的时候也是通过ajax请求,然后再显示的.这样,如果有人在留言里写入了js语句,这结语句都会被执行.解决办法就是对这些特殊字符进行转义再显示出来.如果在jsp中使用jstl标签,就很简单了.直接使用这样就行了,会自动进行转义,其中省略了参数escapeXML=”true”,这是默认的.所以说在显示这些用户提交的内容...
jquery与ajax获取特殊字符
在用jquery加ajax写的时候,发现如果传进去的数据包含&则无法获取数据而+号的话就会被判定为空,解决办法就是使用encodeURIComponent()函数对要发送的数据进行编码.
function ajax() {$val = encodeURIComponent($(#note).val());$.ajax({type: post,url: xxx.php,data: txt= + $val,success: function(data) {$("#remove").empty();$("#main").html(data);$(".chg_area").hide();}});
};
这样就能传&+这...
在做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进行留言的时候,出现了一个问题.因为留言内容写完之后,通过ajax提交内容,同时使用js把留言的内容添加到页面上来.浏览留言的时候也是通过ajax请求,然后再显示的.这样,如果有人在留言里写入了js语句,这结语句都会被执行.解决办法就是对这些特殊字符进行转义再显示出来.如果在jsp中使用jstl标签,就很简单了.直接使用<c:out value=”${r.content}” />这样就行了,会自动进行转义,其中省略了参数escapeXML=”true”,这是默认的...