window.showModalDialog参数传递中含有特殊字符的处理方法
window.showModalDialog参数传递中含有特殊字符的处理方法
发布时间:2016-12-30 来源:查字典编辑
摘要:程序没有改动过运行一直正常,突然有一天同事告知出现错误了。经过检查发现传递的数据中出现了#等特殊字符,浏览器只取到#号前面的数据,后面的被截...

程序没有改动过运行一直正常,突然有一天同事告知出现错误了。经过检查发现传递的数据中出现了#等特殊字符,浏览器只取到#号前面的数据,后面的被截断。然后首先想到先把数据用 Server.UrlEncode方法编码一下,虽然可以看到特殊字符已经被编码,可是正确的数据依然没有传递过去,错误依旧。

复制代码 代码如下:

"JavaScript:window.showModalDialog('Info.aspx?bh=" + Server.UrlEncode(e.Row.Cells.FromKey("编号").Text.Trim()) + "‘,null,'dialogWidth:750px;dialogHeight:500px;center:yes;status:no;resizable:yes;');"

然后改用Escape方法后,参数传递正常:

复制代码 代码如下:

"JavaScript:window.showModalDialog('Info.aspx?bh='+ escape("" + e.Row.Cells.FromKey("编号").Text.Trim() + ""),null,'dialogWidth:750px;dialogHeight:500px;center:yes;status:no;resizable:yes;');"

但是如果不是用模态窗口而直接把链接地址打开的话用Server.UrlEncode就没有问题,很奇怪,哪位大湿能给指点一下

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类