在jquery easyui中,利用AJAX方式调用后台ASHX页面,传参为汉字,
var handler = "Ajax/GetRoleListHandler.ashx?name=" +name;
$('#tableRole').datagrid('options').url = handler;
后台ASHX页面利用
string name = context.Request["name"];
显示为乱码.
解决方法:
对参数name使用escape函数编码即可
var handler = "Ajax/GetRoleListHandler.ashx?name=" + escape(name);
$('#tableRole').datagrid('options').url = handler;
参考链接:http://www.cnblogs.com/fish-li/archive/2012/10/14/2723631.html#_label1
-------------------------------------------------------------------------------------------------------
escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。
语法
escape(string)
参数 | 描述 |
---|---|
string | 必需。要被转义或编码的字符串。 |
返回值
已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列。
说明
该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: * @ - _ + . / 。其他所有的字符都会被转义序列替换。