window.showModalDialog 参数传递中含有特殊字符的处理
2013-06-06 11:17
441 查看
程序没有改动过运行一直正常,突然有一天同事告知出现错误了。经过检查发现传递的数据中出现了#等特殊字符,浏览器只取到#号前面的数据,后面的被截断。然后首先想到先把数据用 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: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就没有问题,很奇怪,哪位大湿能给指点一下
相关文章推荐
- window.showModalDialog参数传递中含有特殊字符的处理方法
- ajax请求中传递的参数中如果含有特殊字符怎么处理?
- ajax请求中传递的参数中如果含有特殊字符怎么处理?
- js与java对http参数含有特殊字符的传递处理
- ajax请求中传递的参数中如果含有特殊字符怎么处理?
- URL传递参数包含特殊字符的处理
- ajax传递参数含有特殊字符解决方案
- ajax参数传递时含有特殊字符只能获取一部分字符
- 在URL上传递参数,如果含有特殊字符必须对其进行编码
- mfc通过URL传递参数时处理特殊字符
- PHP中GET/POST方法参数传递空格+逗号等特殊字符处理办法
- 使用<a>标签调用struts2的action、传递动态参数、以及参数中出现加号等特殊字符的处理方法
- 关于处理GET方式提交的含有特殊字符的参数
- 关于处理GET方式提交的含有特殊字符的参数
- HTTP通过Get请求传递参数时特殊字符被转码的处理方式
- 关于处理GET方式提交的含有特殊字符的参数
- URL传递参数包含特殊字符的处理
- GET请求中参数含有某些特殊字符的处理
- ajax传递参数含有特殊字符解决方案
- GET请求中参数含有某些特殊字符的处理