我的思路是这样的:有2个HTML控件(select和text),和一个后台button控件。当按button后,先执行前台js函数,获得select和text的值,赋值给另一个前台控件hidden(name=txt_hid)。后台用string str=Request.Form[txt_hid],获取hidden的值,但是所取的值为null。为什么呢。我测试了一下,把这hidden的值赋给前台div的innerHTML,是有值的,但是按了button后,这个值显失了一下后就消失了,请高手指教为什么呢?为什么取不到hidden的值?
{
Resquest.Form["HiddenField1"].ToString();
}
代码:
function quzhi()
{
var selcondition=document.getElementById("sel_condition");
var index_condition=selcondition.selectedIndex;
var txt_hid=document.getElementById("txt_hid");
var txtcondition=document.getElementById("txt_condition");
txt_hid.value="0,"+selcondition.options[index_condition].value+",";
txt_hid.value+=txtcondition.value;
var div=document.getElementById("div2");
div.innerHTML=txt_hid.value;
}后台:
protected void search_Click(object sender, EventArgs e)
{ string a = Request.Form["txt_hid"];
Response.Write("<script>alert(" + a + ")</script>");
}
Resquest.Form["HiddenField1"];Resquest.params["HiddenField1"];
是服务器控件了这么取:
HiddenField1.value;
1.按了button后,前台的JS又执行了某些操作,将hidden值清空了2.
Request.Form[txt_hid]改为
Request.Form["txt_hid"]
或者改成Request["txt_hid"]不知你这里 txt_hid是一个常量字符串还是 一个变量.另外,你这个hidden是放在 <Form></form>之间么?