href的参数含有中文在IE下乱码的解决

这是在使用kendo grid的自定义链接时遇到的一个坑,链接如下:

    var TempStr = "<a href=‘" + Url.Action("EditUserInfo", "Account", new { id = "#=Id#", Name = "#=Name#",isView = true }) + "‘  title = \"#=Name#\">#=Name#</a>";

这个链接是会加载在grid的模版里,所以用asp.net 的转码方式是无效的,如HtmlEncode(),Url.Encode(),Server.UrlEncode,Server.HtmlEncode,EncodeJsString等方式都是无效的,因为转码后在grid的模板里又会被转义回来,所以只能在触发链接时进行转码,最终使用JavaScript的encodeURI() 函数解决问题,特此备注一下。

时间: 2024-10-25 00:08:24

href的参数含有中文在IE下乱码的解决的相关文章

window.location.herf=url参数有中文,到后台乱码问题解决

js中的代码: /*将中文的参数进行两次编码 */ function queryByName(){                    //获取查询条件的用户名                    var queryName=$("#queryName").val();//尚晓飞当当                    alert(queryName);                    //进行后台跳转                    window.location.

yii下使用oracle中文都变成问号乱码的解决方法

在配置文件中,一般会用以下配置: 'db_oracle'=>array( 'class' => 'CDbConnection', 'connectionString'=>'oci:dbname=服务器地址/服务名', 'username'=>'用户名', 'password'=>'密码', 'charset' => 'utf8', 'enableParamLogging'=>true, ), 我试了千万遍,找了N久的资料,就是不行,在thinkphp中发现也没有什

Ubuntu Server 14.04 选择中文安装后日期乱码的解决方法

Ubuntu Server 14.04选择中文安装后,默认的/etc/default/locale会使某些中文日期乱码,执行ll和date可见. /etc/default/locale 原来内容为: LANG="zh_CN.UTF-8" LANGUAGE="zh_CN:zh" LC_NUMERIC="zh_CN" LC_TIME="zh_CN" LC_MONETARY="zh_CN" LC_PAPER=&q

(收集)linux环境下乱码的解决方法

**************************** 就是从数据库中取出来时,在存入linux的文件里时,在字符流时制定编码格式.代码如下: FileOutputStream fos=new FileOutputStream(new File(filePath),true); Writer ut=new OutputStreamWriter(fos,"UTF-8"); out.write(s); out.write("\n"); out.flush(); fos

raw_input里面中文输出会变成乱码的解决方法

#!/user/bin/env python# -*- coding: utf-8 -*- print u'你好,你是:'name=raw_input((u'请输入你的名字\n').encode('gbk')).decode('gbk') print name,u'是一个好名字,欢迎来到%s' %u'极乐阁' raw_input 里的decode里不能使用utf-8,使用后依然是乱码. 中文在raw_input里需要转换为gbk,gbk是汉字内码扩展规范.gbk 向下与GB 2312兼容,向上支

Linux 客户端 下乱码的解决方法

最近使用xshell登陆英文版redhat,由于某些文件是中文编码,在xshell下显示乱码.折腾了很久终于找到了解决的方法,希望可以对大家有用.其他语言乱码的话,解决方法和此类似! 首先检查系统的language设置的是否是中文.在终端下输入命令∶# echo $LANG若不是,则需要修改环境变量.修改环境变量有多种方法,简单总结三种比较常用的∶1> 只针对当前终端的修改,对其他用户没有影响在命令行下输入∶# export LANG=en_US.utf-8这种修改只对当前终端有效,终端退出后即

json_encode 转化数组时,中文不转义出现乱码的解决方法

一个简单的方法,就是在json_encode($data) ,后面添加一个参数   json_encode($data, JSON_UNESCAPED_UNICODE); 写一个简单的代码 public function appLog($id,$age){ $User = M('User'); $where['id'] = $id; $where['age'] = $age; $data = $User->where($where)->select(); if ($data){ return

ajax传送中文字符到后台乱码的解决方法

$.ajax({ url : 'Login', type : 'post', dataType : 'text', data : { "user" :encodeURIComponent(userName), }, 前端代码 String name=request.getParameter("user"); name= URLDecoder.decode(name, "UTF-8"); 后台代码

下载文件传递含有中文的参数 和文件下载

在用  window.open()下载服务端的文件需要传送参数,但是参数含有中文,在此情况下,后台接受到的参数会乱码或数据丢失, 此时需要将含有中文的参数 用encodeURI(str)转换,这样服务端就能正常接收. * 文件下载 * @param filePath:文件路径 * @param fileName:文件名 */function downloadFile(filePath, fileName) { var param = "filePath=" + filePath + &