ASP.NET Request 与 Name(表单元素值)
ASP.NET中,我们在后台获取页面表单元素中的值的方法通常有:
Request.Form (Post) 、Request.QueryString(GET)、Request.Params等几种。
当然,还可以直接使用Request本身的索引。
-----
有些时候,我们页面上的表单元素的值(比如下拉列表)是通过ajax(js)来动态改变的,那在后台再使用.Value这些就不能再获取到了。
这个时候怎么办呢?
一、可以使用一个隐藏控件来存放选中的值。然后在后台获取该隐藏控件的值。
二、我们应该知道,表单元素的值的传递是通过name属性来标识的(不管是Post还是Get)。
无论值怎么变,该元素的name还是不变的,那在ASP.NET中,就表示UniqueID是不变的,那我们就可以通过
Request[***.UniqueID]来获取元素值。
------
那如果页面上有多个具有相同name的元素时,我们怎么获取值呢?
通过Request及相关几个(对象)属性也是可以获取到的,默认情况下,获取到的值是以逗号分隔的。
但是:如果我们在表单元素中输入的值本身就包含逗号时,怎么办呢?
》》也许我们很少注意到,Request的几个(对象)属性都包含了一对方法(Get和GetValues)。它们其实就可以获取传递的元素值。
针对有多个相同name元素时:
Get获取到的值以逗号分隔,而不管元素值本身是否包含逗号。
GetValues会将获取到的元素值以数组方式存放,而不以逗号连接。
我们可以想像,Get是对GetValues的又一层包装(数组join方法连接)
因此,如果要获取多个相同name元素的值,可以使用GetValues..
<h3>
心静似高山流水不动,心清若巫峰雾气不沾。
</h3>
心静似高山流水不动,心清若巫峰雾气不沾。
</h3>
分类:
ASP.NET(C#)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端