还是一个URL传值的问题
在ASP.Net入门经典里有这样一个例子:
string Name="Sniff";
string Age="23";
html中:<a href"birthday2.aspx?name=<% Response.Write(Name);%>&age=<%Response.Write(Age);%>">Click here</a>
在我的程序中我这样写:
para1=ddlYear.SelectedItem.Text+"-"+ddlMon.SelectedItem.Text+"-"+ddlDay.SelectedItem.Text;
para2=ddlYPLY.SelectedItem.Text;
Response.Redirect("selectresult.aspx?yprq=<% Response.Write(para1);%>&yply=<% Response.Write(para2);%>");
但并未达到我的效果,地址栏里是这样显示的:
http://127.0.0.1/Project/HX/mzfx/selectresult.aspx?yprq=<%%20Response.Write(para1);%>&yply=<%%20Response.Write(para2);%>
大家帮我看看是哪里出错了
我觉得两者应该是一样的啊
问题点数:10、回复次数:9Top
1 楼redcaff_l(热的咖啡)回复于 2002-07-18 11:37:10 得分 0
try this:
Response.Redirect("selectresult.aspx?yprq=<% =Response.Write(para1);%>&yply=<% =Response.Write(para2);%>");
Top
2 楼baitianhai(hong)回复于 2002-07-18 11:40:04 得分 5
当然不一样了
你写的是放在引号中,它直接就输出了的,.net不可能循环解释的
应该这样写
Response.Redirect("selectresult.aspx?yprq=" & para1 & "&yply=" & para2 );
Top
3 楼nohbday(翔)回复于 2002-07-18 11:43:04 得分 0
晕~
那种写法根本就不通!Top
4 楼redcaff_l(热的咖啡)回复于 2002-07-18 11:44:34 得分 5
上面的不行。
Response.Redirect("selectresult.aspx?yprq="+para1+"&yply="+para2);Top
5 楼bluefish922(思念里的流浪鱼)回复于 2002-07-18 11:54:19 得分 0
这种方法不太好呢,地址栏会全部把参数显示出来呢。Top
6 楼baitianhai(hong)回复于 2002-07-18 12:01:23 得分 0
不好意思,忘了是C#,用VB习惯了
参数的问题可以使用
server.UrlEncode 编码
server.UrlDncode 解码Top
7 楼baitianhai(hong)回复于 2002-07-18 12:02:22 得分 0
不好意思,忘了是C#,用VB习惯了
参数的问题可以使用
server.UrlEncode 编码
server.UrlDncode 解码Top
8 楼yshuo(为而不争)回复于 2002-07-18 12:22:25 得分 0
感谢redcaff_l(热的咖啡)和baitianhai(hong)
现在还有一个问题是我的para1是一个日期格式的字符串
例如“2002-7-16”
这样写Response.Redirect("selectresult.aspx?yprq="+para1+"&yply="+para2);
可以传第二个参数过去,第一个不行
然后我又这样写(不知道对不对)
Response.Redirect("selectresult.aspx?yprq="+Server.UrlEncode(para1)+"&yply="+para2);
另一个页面:Response.Write(Server.UrlDecode(Request.QueryString["qyrq"]))
也还是得不到
这又是什么问题呢
再次感谢Top
9 楼yshuo(为而不争)回复于 2002-07-18 13:08:31 得分 0
真是脸红,问题已经解决,是我写错了变量名
再次感谢大家
分数已经送出Top




