asp.net Form 表单

  Form(表单)对于每个WEB开发人员来说。但我们在VS中新建一个Aspx页面是,页面中就会自动创建一个表单。WebForms框架为了帮助我们简化开发工作,做了很完美的封装。与此同时很多东西也没我们忽略了。

例如上图中 action,method,enctype这三个属性常常被忽略

action属性指明当前表单提交之后由哪个程序来处理。在asp.net里面一般都是都aspx页面来处理。
method属性指明form表单的提交方式。它有两个可能值get和post。
enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码。

接下来我们看一下包含两个输入框一个提交按钮的表单。

 1     <form runat="server">
 2     <p>
 3         客户名称:
 4         <input type="text" name="CustomerName" style="width: 300px" /></p>
 5     <p>
 6         客户电话:
 7         <input type="text" name="CustomerTel" style="width: 300px" /></p>
 8     <p>
 9         <input type="submit" value="提交" /></p>
10     </form>

在浏览器中浏览表单,查看其源码:

通过查看源码会发现.net自动制定action和method. 同时生成了_VIEWSTATE.可以看书asp.net默认的表单时按照post方法提交的。post和get的对比如图

表单提交,成功控件

浏览器并不是将所有的表单控件全部发送到服务器的,而是会查找所有的【成功控件】,只将这些成功控件的数据发送到服务端,什么是成功控件呢? 简单地来说,成功控件就是:每个表单中的控件都应该有一个name属性和”当前值“,在提交时,它们将以 name=value 的形式做为提交数据的一部分。 对于一些特殊情况,成功控件还有以下规定:

1. 控件不能是【禁用】状态,即指定【disabled="disabled"】。即:禁用的控件将不是成功控件。
2. 如果一个表单包含了多个提交按键,那么仅当用户点击的那个提交按钮才算是成功控件。
3. 对于checkbox控件来说,只有被用户勾选的才算是成功控件。
4. 对于radio button来说,只有被用户勾选的才算是成功控件。
5. 对于select控件来说,所有被选择的选项都做为成功控件,name由select控件提供。
6. 对于file上传文件控件来说,如果它包含了选择的文件,那么它将是一个成功控件。 此外,浏览器不会考虑Reset按钮以及OBJECT元素。

注意: 1. 对于checkbox, radio button来说,如果它们被确认为成功控件,但没有为控件指定value属性,那么在表单提交时,将会以"on"做为它们的value 2. 如果在服务端读不到某个表单控件的值,请检查它是否满足以上规则。

 

 

转载于:https://www.cnblogs.com/rdzzg/archive/2013/05/31/3109681.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值