您的位置:程序门 -> .net技术 -> asp.net



关于传递的参数不完整的问题    ///


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


关于传递的参数不完整的问题    ///[已结贴,结贴人:hdf336]
发表于:2007-04-07 08:13:21 楼主
今天遇到了一个有趣的问题:
  <a   href="productmanage.aspx?bigclassname=中型"> 传递 </a>   ¦  
想把"中型"参数通过request.querystring( "bigclassname ")传递给 'productmanage.aspx页面 ,可在productmanage.aspx只显示一个字"中"
这是为什么?????
发表于:2007-04-07 08:18:241楼 得分:0
编码问题。。传递个其它的中文字符试试,
发表于:2007-04-07 08:26:532楼 得分:10
一般有3种方法:
1.设置web.config文件  
<system.web>  
......  
<globalization   requestencoding= "gb2312 "   responseencoding= "gb2312 "   culture= "zh-cn "   fileencoding= "gb2312 "   />  
......  
</system.web>  
2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。  
> >   进行传递  
string   name   =   "中文参数 ";  
response.redirect( "b.aspx?name= "+server.urlencode(name));  
> >   进行接收  
string   name   =   request.querystring[ "name "];  
response.write(server.urldecode(name));  

3.如果是从   .html   文件向   .aspx   文件进行传递中文参数的话(即不从后台用   redirect()方法进行   url   转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。  
> >   进行传递  
<script   language= "javascript ">  
function   gourl()  
{  
var   name   =   "中文参数 ";  
location.href   =   "b.aspx?name= "+escape(name);  
}  
</script>  
<body   onclick= "gourl() ">  
> >   进行接收  
string   name   =   request.querystring[ "name "];  
response.write(server.urldecode(name));  

一般来说。设置web.config文件就可以了。但是如果你用   javascript   调用   webservice   方法的话(往webservice里面传递中文参数)。设置   web.config   文件好象无效。  

或用

response.redirect( "test1.aspx?111= "+system.web.httputility.urlencode( "中华人明共和国 "));     //建议使用
----------------
编码问题
发表于:2007-04-07 08:28:463楼 得分:0
可以给参数加密

接收再解密




快速检索

最新资讯
热门点击