后台获取不到前台Hidden值?

ywwandsyf 2010-11-22 03:52:54
我的思路是这样的:有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的值?
...全文
768 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
ywwandsyf 2010-11-25
  • 打赏
  • 举报
回复
果然是因为hidden是没有放在 <Form></form>之间造成的。谢谢
kkbac 2010-11-22
  • 打赏
  • 举报
回复
把hidden改成服务器控件,直接id取值.
newdigitime 2010-11-22
  • 打赏
  • 举报
回复
两种可能
1.按了button后,前台的JS又执行了某些操作,将hidden值清空了

2.
Request.Form[txt_hid]改为
Request.Form["txt_hid"]
或者改成Request["txt_hid"]

不知你这里 txt_hid是一个常量字符串还是 一个变量.

另外,你这个hidden是放在 <Form></form>之间么?
ywwandsyf 2010-11-22
  • 打赏
  • 举报
回复
这个函数给hidden赋值没错吧,hidden把值在赋给div也没错吧,但是为什么一按button从服务器返回的页面上div的值就没了呢?或者div的值在回传之前就没了呢?
flyerwing 2010-11-22
  • 打赏
  • 举报
回复
不是服务器控件了这么取:
Resquest.Form["HiddenField1"];Resquest.params["HiddenField1"];
是服务器控件了这么取:
HiddenField1.value;
ywwandsyf 2010-11-22
  • 打赏
  • 举报
回复
表单提交了啊。
代码:
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>");
}
你我他 2010-11-22
  • 打赏
  • 举报
回复
应该js 和 Page_Load 的执行顺序有关系
「已注销」 2010-11-22
  • 打赏
  • 举报
回复
如果是JS在前台赋值的话,直接在后台用控件是获取不到的,需要用FORM获取

if(IsPostBack)
{
Resquest.Form["HiddenField1"].ToString();
}
porschev 2010-11-22
  • 打赏
  • 举报
回复
按button后提交表单了吗?
leejelen 2010-11-22
  • 打赏
  • 举报
回复
你把获取的那小段代码贴出来看看!
ywwandsyf 2010-11-22
  • 打赏
  • 举报
回复
ispostback?按button不就是回传吗,能说得清楚一点吗?hidden是有name的,name=txt_hid。
leejelen 2010-11-22
  • 打赏
  • 举报
回复
ispostback 这个说点有点道理啊。试试?
边城的刀声 2010-11-22
  • 打赏
  • 举报
回复
hidden有name没?
liue_0612 2010-11-22
  • 打赏
  • 举报
回复
ispostback问题
mangshuo 2010-11-22
  • 打赏
  • 举报
回复
首先确定都是服务器控件,其实注意isPostBack.

62,271

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧