html 中是允许多个具有相同name属性的元素的,例如

<div>
<input name="txtName" id="txtFirstName" type="text" />
<input name="txtName" id="txtMiddleName" type="text" />
<input name="txtName" id="txtLastName" type="text" />
div>

服务器端读取的常规做法是:

string name = Request.Params["txtName"];

得到的将是一串以逗号分割的字符串,当然你可以手动分割:
string[] nameParts = name.Split(’,’);
但是当每个 input 输入可能包含逗号的时候,通过逗号分割就会是错的。
如何解决?

在 Classic ASP 通过 Request 可以这样分别获取

<%
firstName = Request.Form("txtName")(1)
middleName = Request.Form("txtName")(2)
lastName = Request.Form("txtName")(3)
%> 

在 ASP.NET HttpRequest 同样支持 Classic ASP Request 的用法,

string[] nameParts = Request.Params.GetValues("txtName");
string firstName = nameParts[0];
string middleName = nameParts[1];
string lastName = nameParts[2];

以上用法对于 GET/POST 方式提交都是适用的。

值得注意的是,用来存储 QueryString/Form/ServerVariables 的对象是 System.Collections.Specialized.NameValueCollection, 这是 Key/Value 型对象,它的特殊性在于,一个Key下可存储多个 Value。

越来越怀念 Classic ASP,ASP+ 将简单的HTTP裹得太严实,很多简单实用的用法逐渐被遗忘,漫天飞的 runat="server" 让诸多原始但精巧的 form 处理方式没有被传承下来....
顺便题下,虽然很少使用ASP.NET AJAX,特别是ControlToolkit包,当然也是由于参与UI需求的AJAX开发较少,但是对ControlToolkit的性能,特别是响应效率一直抱怀疑态度....

Request 分别获取具有相同 name 属性表单元素值—— 怀念 Classic ASP (转自博客园)相关推荐

  1. Request 分别获取具有相同 name 属性表单元素值

    html 中是允许多个具有相同name属性的元素的,例如 <div> <input name="txtName" id="txtFirstName&qu ...

  2. js入门·表单详解一(修改表单属性,修改表单元素值)

    实在javascript入门·Document对象入门讲解(访问表单,创建新页,获取页标题) 一文中,我们已经把表单的一些基本访问等弄清楚了,下面我们深入的学下表单的属性以及对表单元素的简单操作! 演 ...

  3. java 获取js元素,表单元素值获取方式js及java方式的简单实例

    表单元素值获取方式js及java方式的简单实例 这里有新鲜出炉的 Javascript 教程,程序狗速度看过来! JavaScript 客户端脚本语言 Javascript 是一种由 Netscape ...

  4. 如何给FormPanel表单中的元素赋值以及获取表单元素值

    1.定义表单元素的name属性如下 var HLV = new Ext.form.TextField({fieldLabel: '汇率',name:'EXCHANGERATE',anchor: '30 ...

  5. 表单元素值获取方式js及java方式

    大家都知道我们在提交form的时候用了多种input表单.可是不是每一种input表单都是很简单的用Document.getElementById的方式就可以获取到的.有一些组合的form类似于che ...

  6. antd如何获取表单的值_antd 父组件获取子组件中form表单的值

    还是拿代码来讲吧,详情见注释 子组件 import React, { Component } from 'react'; import { Form, Input } from 'antd'; con ...

  7. JQiery选择器中的表单元素

    无论是提交还是传递数据,表单元素在动态交互页面的作用是非常重要的.jQuery中专门加入了表单选择器,从而能够极其方便地获取到某个类型的表单元素. 表单选择器这么方便,让我们来看一下都可以怎么使用吧: ...

  8. reac笔记_13 form表单元素中 input/defaultValue + useState/useRef

    目录 原生html元素 input属性 示例1 示例2 react中 受控组件与非受控组件 属性 error - input标签value属性使用 示例 - useState 示例 - input标签 ...

  9. table中加表单元素每行怎么验证_Validform 一行代码搞定整站的表单验证 - 文章

    Validform 一行代码搞定整站的表单验证,为什么能如此方便?插件的核心思想就是把所有的验证条件及验证提示信息绑定到每个表单元素,让验证代码在执行时只是核对表单下各元素的值是否跟绑定的验证条件相符 ...

最新文章

  1. RTP:实时应用程序传输协议
  2. php微信支付na,虚拟支付
  3. [导入]深入了解OpenOffice.org(二){作者:路广}
  4. DBController心得之一:利用DMO对象对SQL2005数据库进行Backup和restore的操作
  5. 很现实、很暴力的面试法则 —— 来自招聘官的自述
  6. nutch爬虫原来是这样操作的!
  7. RESTful架构与RPC架构
  8. mysql 编码utfmb4
  9. android通知栏应用程序更新,Android App自动更新之通知栏下载
  10. 如何开发一款高大上的android应用的必备知识
  11. 混合蛙跳算法Matlab代码
  12. 中文语音识别数据集总结
  13. java读取zip文件损坏_java zip压缩文件损坏
  14. Spring从入门到精通(二)—Spring核心思想之IOC
  15. smtplib 抄送邮件_Smtp发送及抄送邮件
  16. Flash Player教育版是什么?和普通版有何区别?
  17. 12.27追求世俗意义上的成功与心灵快感的矛盾
  18. Android学习笔记(2)——探究活动
  19. 前端新手坑之float:left
  20. pos机 gd32f103 串口上位机可调正弦波(纯正弦波逆变器)

热门文章

  1. 【数字信号处理】序列傅里叶变换 ( 序列傅里叶变换定义详细分析 | 证明单位复指数序列正交完备性 | 序列存在傅里叶变换的性质 | 序列绝对可和 → 序列傅里叶变换一定存在 )
  2. 【Android 插件化】现有的针对插件化恶意应用的解决方案 | 插件化应用开发推荐方案
  3. 【EventBus】EventBus 源码解析 ( 注册订阅者 | 注册订阅方法详细过程 )
  4. 【Java 并发编程】线程池机制 ( ThreadPoolExecutor 线程池构造参数分析 | 核心线程数 | 最大线程数 | 非核心线程存活时间 | 任务阻塞队列 )
  5. 【数据挖掘】数据挖掘简介 ( 数据挖掘引入 | KDD 流程 | 数据源要求 | 技术特点 )
  6. 【C++ 语言】容器 ( queue 队列 | stack 栈 | priority_queue 优先级队列 | set 集合 | 容器遍历 | map )
  7. python学习 day19
  8. UVA - 10615 Rooks
  9. java 中文及特殊字符校验
  10. 使用SqlBulkCopy数据导入和复制