页面提交给别的页面,别的页面怎么获取控件值

bug810 2016-01-20 02:20:53
apx页面使用post提交到另外一个aspx页面,怎么获取页面上的asp:CheckBox的选中值,因为服务器控件没有name值,不能直接使用request.form获得,应该怎么办呢?,因为原aspx页面还要对asp:CheckBox做一些处理,所以不能用html控件代替
...全文
125 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
在你的 asp.net 的 <form runat="server" /> 之内还有 什么 <form /> 么?这就破坏了 html。 换一个角度,不管你的 html 是否有bug,假设你要在 asp.net 的每个页面唯一的那个 Form 之外另外有一个 Form并且提交到其它页面,那么你应该改为 javascript 的类似
window.location.href= server + "/abc/target.aspx?a=" + a + "&b="+ b.toString() + "&c="+ encodeURIComponent(c);
这类带参数跳转页面形式,而不是使用 post。 总之,按照 asp.net 的规矩编程,有些 html/javascript 形式需要放弃。
  • 打赏
  • 举报
回复
引用 楼主 bug810 的回复:
apx页面使用post提交到另外一个aspx页面,怎么获取页面上的asp:CheckBox的选中值,因为服务器控件没有name值,不能直接使用request.form获得,应该怎么办呢?,因为原aspx页面还要对asp:CheckBox做一些处理,所以不能用html控件代替
asp.net 的框架原理是这样的。虽然 html 可以支持 form post 指向任何服务器端页面,但是asp.net 总是把那个唯一的 Form 的 目标指向自己!你发现没有?! 那么,你的页面本身就可以响应各种事件。然后响应事件时,你可以通过客户端重定向
Response.Redirect("~/abc/go.aspx");
这类形式,或者使用服务器重定向 Server.Transfer、Server.Execute 等语句,导航到另一个页面。 asp.net 使用“当前页面”来捕获丰富的页面状态和事件信息,等你处理了非常复杂的信息之后,再用 asp.net 代码来重定向到另一个页面。而不是在页面上去修改 Form Action 里边的目标页面地址的!
秋的红果实 2016-01-20
  • 打赏
  • 举报
回复
既然不能用html控件,就用服务器的,怎么会没有id?用的是id,不是什么name,request.form[id]
bug810 2016-01-20
  • 打赏
  • 举报
回复
我设置了控件的静态ID,但是name名字却是系统自定义的,<asp:CheckBox ID="id" runat="server" ToolTip='<%#Eval("id") %>' ClientIDMode="Static" />生成之后结果是<input id="id" type="checkbox" name="rp$ctl01$id" />,name是变化的
爛轲 2016-01-20
  • 打赏
  • 举报
回复
没有name,那就设置一个name,不要把问题想的太复杂
  • 打赏
  • 举报
回复
不可能没name的,默认控件的name和id是一致的,当然asp.net4开始你也可以自定义生成的id和name,你看打开的网页源代码,到底是什么name

62,046

社区成员

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

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

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

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