ajax-AJAX在火狐浏览下传输中文不起作用?

问题描述

AJAX在火狐浏览下传输中文不起作用?

本人用AJAX做了个搜索下拉菜单,传输英文字符时候,AJAX获取后台数据可以前台显示,但是输入中文时候,就没有任何反应,也没有乱码,这个情况是在火狐下出现的,求高手帮助解决,谢谢。
部分代码
function createRequest() {
try {
request = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
request = false;
}
}
}
if (!request)
alert("错误,无法请求XMLHttpRequest!");
}

解决方案

encoder两次,火狐和ie默认编码不一样

解决方案二:

类似 encodeURI(encodeURI(geturl))

解决方案三:

现在谁还在用这么原始的代码,为什么不用jquery

解决方案四:

用火狐断点调试一下,看那一步出错了。
另外我也建议用jquery的post或ajax方法

解决方案五:

encodeURIComponent编码下要发送的数据,应该是服务器端获取到乱码了,一查询导致服务器端代码出问题没有进入你的status==200的判断里面

你应该改成这样判断,不管是否出错都知道是什么问题了

 if(4==xhr.readyState){
   if(200==xhr.status)alert('请求成功n'+xhr.responseText);
     else alert('动态页有问题,返回数据如下n'+xhr.responseText);
}

解决方案六:

中文要逆行encode,比如编码成base64

解决方案七:

看看你的页面声明是什么编码格式的

时间: 2024-11-22 17:24:28

ajax-AJAX在火狐浏览下传输中文不起作用?的相关文章

Ajax传输中文乱码问题的解决办法_AJAX相关

AJAX简介 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法. AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下. ajax传输中文乱码问题描述: 我是在一个jsp页面有一个保存按钮,点击时会触发saveForm()的js函数,在saveForm()函数里经过校验后,会通过ajax发送数据请求,这样就不用通过提交表单来传输数据了,aj

Ajax传输中文乱码问题的解决办法

AJAX简介 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法. AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下. ajax传输中文乱码问题描述: 我是在一个jsp页面有一个保存按钮,点击时会触发saveForm()的js函数,在saveForm()函数里经过校验后,会通过ajax发送数据请求,这样就不用通过提交表单来传输数据了,aj

关于Ajax请求中传输中文乱码问题的解决方案_AJAX相关

今天遇到一个问题,有关ajax 请求中传输中文,遇到乱码的问题. 如下代码: function UpdateFolderInfoByCustId(folderId, folderName, custId) { $.ajax({ type: "Post", contentType: "application/x-www-form-urlencoded; charset=utf-8", url: "http://localhost/CRM/Ashx/HandK

Ajax请求过程中下载文件在FireFox(火狐)浏览器下的兼容问题_AJAX相关

需求很简单,点击一个文件链接下载该文件,同时向后台发送请求.需求很常见,用户点击下载后通常要进行下载量的统计,统计的话可以利用 script标签 或者 img标签(图片ping) 的跨域能力,将它们的 src 属性指向统计地址,但是这次用了 ajax 进行统计,遂出现了这个问题. demo 代码如下: <a id="a" href="http://c758482.r82.cf2.rackcdn.com/Sublime Text 2.0.2 x64 Setup.exe&q

关于Ajax请求中传输中文乱码问题的解决方案

今天遇到一个问题,有关ajax 请求中传输中文,遇到乱码的问题. 如下代码: function UpdateFolderInfoByCustId(folderId, folderName, custId) { $.ajax({ type: "Post", contentType: "application/x-www-form-urlencoded; charset=utf-8", url: "http://localhost/CRM/Ashx/HandK

utf-8-jquery用ajax读取文件的时候里面的中文乱码

问题描述 jquery用ajax读取文件的时候里面的中文乱码 网页是UTF-8 txt也另存为UTF-8,读取出来以后还是乱码 解决方案 txt默认编码就可以了,,不需要设为utf-8吧,,不行的话,,你用文件流读取试试 解决方案二: ajax请求的文件也要存储为utf-8格式,乱码就是编码不统一的问题 解决方案三: 检查一下你的服务器(如Tomcat.Resin.Nginx.Apache等)编码设置是否正确. 解决方案四: 页面里面加入这句 Response.ContentEncoding =

上传-jQuery ajax form提交在IE8下不执行回调函数

问题描述 jQuery ajax form提交在IE8下不执行回调函数 // 上传文件function myUploadExcel(obj) {var options = { url : ""${ctx}/ins/pro/upLoadTempFile.do?filename=""+obj.value dataType : ""text"" beforeSubmit : function(formDatajqFormoption

关于利用ajax使同一php文件下js的一个变量值传递给php

问题描述 关于利用ajax使同一php文件下js的一个变量值传递给php 需要引用什么js文件吗?比如我想吧一个var a=2;的值给php的$a,该怎么写程序?麻烦了- 解决方案 php与js变量传递 解决方案二: 直接用ajax把js中的变量传递给php,php接收后赋值就好了,可以用jQuery来进行ajax传值 解决方案三: jquery $.ajax({ url: 'PHP路径', data:{nums:2}, }); php $a=$_GET['nums'];

extjs4做的东东 在谷歌浏览下是错位的 火狐是好的,不知道什么原因

问题描述 extjs4做的东东 在谷歌浏览下是错位的 火狐是好的,不知道什么原因如下图,圈红的地方 解决方案 一般是css的问题,仔细检查下