说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

一个页转到另一个页后,另一个页的地址栏上将汉字转换成了%%%%类似的东西,如何解决?

编辑:说三道四文库 发布时间:2018-02-24 06:01
HTML文档下载 WORD文档下载 PDF文档下载
第一个页有个文本框,里有写的汉字,然后用a.aspx?....转到下个页的,可是下个页的地址栏上将汉字转换成了%%%%类似的东西,如何解决?
你只管下一页面接收就好了,难道你需要地址里面看到这些东西?
up
传递时使用UrlEncode()进行编码,
获取时使用UrlDecode()进行解码.
直接用Request.QueryString("xx")
用server.transfer("")来传递,这样就不会显示出转向的那个页面的url了,自然也就没有什么&&&.

不过它只限于转向同目录或子目录下的*.aspx页面.
会不是因为中文字传递的问题?用英文字传递如何
楼上的,server.transfer("")的用法和response.Redirect用法一样吗?
这不是我决定的,我在第一页有个textbox控件,它主要是用做填写搜索内容的,所以是中文,你也许会问为什么不用<form runat=server>,因为我那个页里面有好几个按钮,所以不可以,所以我只能用response.Redirect(seach.aspx?id=...&value=...)不知道还有什么方法,我想用类和类之间传递,但不知道怎么做,有没有高手指点指点
来啊
seach.aspx?id=...&value=... 其中一旦有中文就会在浏览器的地址栏上变成seach.aspx?id=%xx%xx&value=...这样的格式,这是一种编码方式:
所有空格、标点、重音符号以及其他非 ASCII 字符都用 %xx 编码代替,其中 xx 等于表示该字符的十六进制数。例如,空格返回的是 "%20" 。字符值大于 255 的以 %uxxxx 格式存储。

不过在页面接受到这样的参数会自动解码成中文的:
直接Request.QueryString("value") 这样读就行了

看没看懂我上面说的啊,楼上说的我都懂,我是说用别的方法,明白吗
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘