Ajax get方法 IE 下乱码
每个浏览器处理编码的格式不同。 ajax使用utf-8来编码发送数据,ie在发送时并没加上charset=utf-8,从而导致乱码(IE默认使用iso-8859-1编码)
JavaScript代码:
function CheckPerson() { //查询前判断;即根据 姓名 查询用户时,对于重名用户,则显示 用户名 输入框,以用户名查询
var userName = $("#SelPerson").val();
if ( userName == "请填写名称") {
alert("请填写名称");
return false;
} else {
var dis = $("#trAccount").css("display");
if (dis == "none") {
var username = encodeURI("name=" + userName); //注意,此处要进行编码,否则IE浏览器下会出现乱码问题
$.ajax("../ajax/SelectUsers.ashx", {
type: "get",
data: username,
dataType: "json",
cache: false,
success: function (data) {
if (data.State == "error1") {
alert(data.Msg);
$("#trAccount").show();
return false;
} else if (data.State == "error2") {
alert(data.Msg);
return false;
} else if (data.State == "ok") {
return true;
} else {
alert("其他错误,请联系管理员");
return false;
}
}
})
} else {
if ($("#account").val().trim() == "") {
alert("请填写账户");
return false;
} else {
return true;
}
}
}
}
asp页面前台代码:
<div class="div3">
<table border="0" cellspacing="0" cellpadding="0" style="width: 300px;">
<tr>
<td colspan="2">
<h2>个人</h2>
</td>
</tr>
<tr>
<td>个人</td>
<td><input runat="server" type="text" id="SelPerson" value="请填写名称" onfocus="if(this.value=='请填写名称'){this.value='';};" onblur="if(this.value==''){this.value=this.defaultValue;}" />
</td>
</tr>
<tr id="trAccount" style="display:none;">
<td>账户</td>
<td><input runat="server" type="text" id="account" value="" /></td>
</tr>
<tr>
<td><input class="hide" type="button" value="隐藏" /></td>
<td><input id="Button3" type="submit" value="搜索" runat="server" onclick="return CheckPerson();" onserverclick="searchPersonal_Click" /></td>
</tr>
</table>
</div>
后台页面代码:
protected void searchPersonal_Click(object sender, EventArgs e)
{
string where = "";
if (account.Visible==false)//账户输入框不显示,以用户名为条件
{
where = " account ='" + account.Value + "'";
}
else
{
where = " username='" + SelPerson.Value + "'";
}
int num = tbUser.GetRecordCount(where);
if (num > )
{
this.SetLimitPerson.Text = "person";
this.SetLimit.Text = "";
this.Rolename.Visible = false;
this.Personal.InnerText = "操作个人-->" + this.SelPerson.Value;
this.Personal.Visible = true;
Bind_Repeater();//绑定模块功能列表
}
}
一般处理页面:
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
HttpRequest Request = context.Request;
HttpResponse Response = context.Response; string userName = Request["name"];
tb_user user = new tb_user();
DataSet ds = user.GetIDByName(userName);
if (ds.Tables.Count>&&ds.Tables[].Rows.Count>)
{
int count = ds.Tables[].Rows.Count;
if (count > )
{
Response.Write("{\"State\":\"error1\",\"Msg\":\"用户名有重复,请填写具体账户\"}");
}
else
{
Response.Write("{\"State\":\"ok\"}");
}
}
else
{
Response.Write("{\"State\":\"error2\",\"Msg\":\"没有此人,请重新填写\"}");
}
}
Ajax get方法 IE 下乱码的更多相关文章
- jQuery ajax在GBK编码下表单提交终极解决方案(非二次编码方法)(转)
版权声明]:版权归作者所有,转载时请以超链接形式标明文章原始出处和作者信息及本声明:http://www.open-lib.com/Forum/Read_69_1.action 前言: 当jquery ...
- Ajax中文传参出现乱码
Ajax技术的核心为Javascript,而javascript使用的是UTF-8编码,因此在页面采用GBK或者其他编码,同时没有进行编码转换时,就会出现中文乱码的问题. 以下是分别使用GET和POS ...
- Ajax.BeginForm方法 参数
感谢博主 http://www.cnblogs.com/zzgblog/p/5454019.html toyoung 在Asp.Net的MVC中的语法,在Razor页面中使用,替代JQuery的Aja ...
- Ajax.ActionLink()方法的使用
第一句话都会这么去写:程序猿就是苦逼,除了开发还要会写博文!哎,今天就和大家一起讨论下Ajax的辅助方法ActionLink的使用,如果有讲的不好的地方或错的地方,请大家务必扔板砖,要投准哦,砸死我算 ...
- MySQL数据库乱码 - Linux下乱码问题一
乱码问题是很让人抓狂的问题,下面我将记录一下linux下mysql乱码问题的解决方法. mysql在linux下乱码问题 一.操作 mysql默认字符集是latin1,但是我们大部分程序使用的字符集是 ...
- ajax请求在ie8下缓存问题
我今天在改项目bug的时候,发现ajax请求在ie8下有缓存,在缓存过期之前,针对相同地址发起的多个Ajax请求,只有第一次会真正发送到服务端.在某些情况下,这种默认的缓存机制并不是我们希望的(比如获 ...
- MVC验证09-使用MVC的Ajax.BeginForm方法实现异步验证
原文:MVC验证09-使用MVC的Ajax.BeginForm方法实现异步验证 MVC中,关于往后台提交的方法有: 1.Html.BeginForm():同步 2.Ajax.BeginForm():异 ...
- Ajax请求(二)--JQuery的Ajax请求方法
JQuery库的Ajax请求的几种方法: 1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. 参数含义: url (String ...
- 给Ajax一个漂亮的嫁衣——Ajax系列之五(下)之序列化和反序列化
给Ajax一个漂亮的嫁衣——Ajax系列之五(下)之序列化和反序列化 标签: ajaxdictionaryjsonobject服务器function 2012-07-25 18:41 2242人阅读 ...
随机推荐
- ssh批量登录并执行命令(python实现)
局域网内有一百多台电脑,全部都是linux操作系统,所有电脑配置相同,系统完全相同(包括用户名和密码),ip地址是自动分配的.现在有个任务是在这些电脑上执行某些命令,者说进行某些操作,比如安装某些软件 ...
- 闹钟--alarmManager
1.AlarmManager,顾名思义,就是“提醒”,是Android中 常用的一种系统级别的提示服务,在特定的时刻为我们广播一个指定的Intent.简单的说就是我们设定一个时间,然后在该时间到来 时 ...
- PacBio全基因组测序和组装
PacBio公司的业务范围也就5个(官网): Whole Genome Sequencing Targeted Sequencing Complex Populations RNA Sequencin ...
- 显示win7桌面网络.reg
显示win7桌面网络.reg Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\C ...
- C# 给软件加注册码功能
为自己写的程序加一个注册功能吧.生成的机器号是根据CPU和硬盘号来的,根据自己的需求改成是否是随机生成. 代码直接粘贴到新建类覆盖原代码就能直接用了. using System; using Syst ...
- 用ildasm/ilasm修改IL代码
原文地址:http://www.cnblogs.com/dudu/archive/2011/05/17/ildasm_ilasm_il.html 在开发中遇到这样一个场景,需要修改一个dll文件(.N ...
- jq手风琴---点击时列表的左边距逐渐减小
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 根据不同的屏幕宽度引入不同的css文件
<link rel="stylesheet" href="css/jl_public.css?v=11"/> <link rel=" ...
- 5.5 Selenium2中的元素定位
WebDriver的更加面向对象的方式大大降低了Selenium的入门门槛,对Web元素的操作也非常之简单易学.实际项目用起来,工作量最大的部分就是你如何解析定位到你的目标项目页面中的各种元素.好比你 ...
- Eclipse Maven Web Application 设置配置文件
默认的项目添加会有问题,各种版本和编译版本错误造成. 1.更改Maven编译版本 2.更改项目Facets针对的版本 3.更改Settings