我用 VS.net 2003 开发:
我在一个页面做了一个单选列表的html表单,用Post装选择发送表单到vote.aspx
然后可以用 Request.Form.Get("FormID"); 来获得传递过来的选项的值。但是怎么判断有没有传递值呢?
用if(Request.Form.Get("FormID")==null)不行啊!
NO,得到POST的数据应该是
if(Request.Form[FormID]=="")
你们好象都没注意到这一点哦!!!~~~~POST封装过来的,FORMID这个对象肯定是存在的,
所以要判断它是值是否为空,当然是==""而不是==NULL
string ID = Request.QueryString["FormID"];
if (ID != null)
{
.....
}
else
{
.......
}
我一直是这样用,一点问题都没有。试一下吧。
用我上面这个就可以解决你这个问题,如果是直接访问的话得到的ID为空,否则就根据ID进行相关操作。
to:wangjuping (三皮子[www.3pz.com])
题外话:
方括号是C#,圆括号是VB
完全没必要在HTML里放表单再传个ASPX文件,写在一个ASPX文件里就行了
这样就可以直接用控件的ID来获取他的值,
假如有个textbox1那么在button触发事件里用textbox1.text就可以得到值。。
这样也解决了你担心别人直接访问你那个后台处理表单的ASPX的麻烦
用HTML里的表单向ASPX传值是ASP的做法。。