• html表单


      1 课程目标
      2 
      3 掌握HTML的常用标签的使用
      4 掌握表格、表单的使用
      5 能够创建自己的个人主页
      6 
      7 了解提交表单的方法
      8 掌握常用表单字段的使用(重点)
      9 -------------------------------------------------
     10 表单概述
     11 
     12 表单用来收集用户信息并提交给服务器。
     13 服务器需要一门动态语言来获取这些信息并进行处理,常用的服务器端语言有asp/asp.net/php/jsp等。
     14 
     15 <form method="get" action="form.htm">
     16     <input type="text" name="id" value="" />
     17     <input type="submit" value="提交" />
     18 </form>
     19 -------------------------------------------------
     20 提交表单的方法
     21 
     22 示例:GET方法提交表单
     23 <form method="get" action="form.htm">
     24 
     25 GET方法的HTTP请求消息头:    ********************
     26 GET /DEMO/form/form.htm?id=dd&password=123456 HTTP/1.1
     27 Accept: */*
     28 Referer: http://localhost:4346/DEMO/form/form.htm
     29 Accept-Language: zh-cn
     30 
     31 
     32 示例:POST方式提交表单
     33 
     34 POST方法的HTTP请求消息头:   **********************
     35 POST /DEMO/form/form.htm HTTP/1.1
     36 Accept: */*
     37 Referer: http://localhost:4346/DEMO/form/form.htm
     38 Accept-Language: zh-cn
     39 Content-Type: application/x-www-form-urlencoded
     40 Accept-Encoding: gzip, deflate
     41 User-Agent: Mozilla/4.0 (compatible; MSIE 7.0)
     42 Host: localhost:4346
     43 Content-Length: 21
     44 
     45 id=dd&password=123456
     46 
     47 action属性
     48     提交表单时转到的URL地址。
     49 
     50 method 属性                **********************
     51 GET方式
     52     收集用户少量信息。
     53     URL的长度限制为4KB
     54 POST方式
     55     收集用户大量信息(可能包含用户上传的文件)。
     56     用户提交的信息保存在HTTP请求消息的正文。
     57     提交后不能使用刷新按钮。
     58 
     59 -------------------------------------------------
     60 常用表单字段
     61 
     62 文本输入框(input)
     63 type 属性
     64     --type=“text”表示文本输入框
     65 value 属性
     66     --文本框的值
     67 name属性
     68     --必须的,提交表单时此文本框的值value存储在name变量中。
     69 
     70 <input  type="text"  name=“input1"   value="你好" />
     71 
     72 maxlength 属性
     73     --文本框允许输入的最多的字符数
     74 tabindex 属性           **********************
     75     --用户点击tab按键时焦点的切换顺序(从1开始)
     76 
     77 disabled属性
     78     --不可用
     79 readonly属性
     80     --只读
     81     
     82 Disabled和readonly的区别?
     83 disabled的文本框显示为灰色
     84 tabindex对disabled的文本框不起作用
     85 disabled的文本框的值不会发送到服务器
     86     
     87 密码输入框(input)
     88     --用于输入密码,输入的密码以星号显示。
     89   
     90 如果表单的 method=’get’,则点击提交按钮时,URL地址变成:
     91 http://localhost:4346/DEMO/form/password.htm?password1=123456
     92 所以,一般用户登陆的表单需要用POST提交方式。
     93 
     94 -------------------------------------------------
     95 
     96 多行文本输入框(textarea)           *****************
     97 用于输入多行文本,如果输入内容过长,则会自动显示滚动条。
     98 
     99 注:实现自动换行的功能:写一个css,如下
    100 <style>                               *****************
    101 .test{
    102 5em; 
    103 border:1px solid #000000;
    104 word-wrap:break-word;
    105 }
    106 </style>  
    107 <textarea class="test"></textarea>    *****************
    108 -------------------------------------------------
    109 列表框(select)
    110 下拉列表,用户可以从一些可选项中选择。
    111 示例:简单的下拉列表
    112 <select name="country">
    113         <option value="America">美国</option>
    114         <option value="China" selected="selected">中国</option>
    115         <option value="India">印度</option>
    116         <option value="Russia">俄罗斯</option>
    117 </select>
    118 
    119 <optgroup>标签                         *****************
    120 用来对选项进行分组(分组标签是不可选择的)
    121 
    122 <select name="country2">               *****************
    123         <optgroup label="北美洲">
    124             <option value="America">美国</option>
    125         </optgroup>
    126         <optgroup label="亚洲">
    127             <option value="China" selected="selected">中国</option>
    128             <option value="India">印度</option>
    129             <option value="Russia">俄罗斯</option>
    130         </optgroup>
    131 </select>                               *****************
    132 
    133 列表框(以平铺的形式显示)              *****************
    134 设置<select>标签的属性 size 的值大于 1 即可
    135 size表示显示多少行
    136 
    137 示例:列表框与多选列表框?              *****************
    138 <select name="country4" size="5">
    139         <option value="America">美国</option>
    140         <option value="China" selected="selected">中国</option>
    141         <option value="India">印度</option>
    142         <option value="Russia">俄罗斯</option>
    143 </select>
    144 
    145 列表框(可以多选)                       *****************
    146 设置<select>标签的属性 multiple="multiple“
    147 用户可以通过Ctrl或Shift选择多个选项。
    148 
    149 -------------------------------------------------
    150 单选按钮(input)
    151 单选按钮的行为类似上面介绍的下拉列表,用户可以从几个选项中选择一个。
    152 
    153 示例:单选按钮分组?
    154 蓝色<input type="radio" value="blue" name="color" />
    155 红色<input type="radio" value="red" checked="checked" name="color" />
    156 白色<input type="radio" value="white" name="color" />
    157 
    158 特别注意:name 用于指定哪些单选框是一组的,
    159 同组的单选框只能选中一个。
    160 
    161 -------------------------------------------------
    162 多选框(input)
    163 多选框和单选按钮,以及可以多选的列表框类似。
    164 
    165 示例:多选框分组?
    166 
    167 蓝色<input type="checkbox" value="blue" name="color" />
    168 红色<input type="checkbox" value="red" checked="checked" name="color" />
    169 白色<input type="checkbox" value="white" name="color" />
    170 
    171 -------------------------------------------------
    172 按钮(input)
    173 提交按钮(type=”submit”)
    174 点击提交按钮所在的表单
    175 用户在单行文本框或密码框中,按enter时提交表单(相当点击提交按钮)。
    176 
    177 重置按钮(type=”reset”)
    178 将表单字段的值重置为页面第一次加载时的值。
    179 
    180 一般按钮(type=”button”)
    181 没有默认行为。
    182 怎样使用一般按钮提交表单?(使用Javascript)
    183 
    184 -------------------------------------------------
    185 图片按钮(input)
    186 类似提交按钮,但是使用一个图片而不是浏览器默认的按钮。
    187 
    188 示例:图片按钮向服务器提交的数据?
    189 
    190 <input type="image" src="../images/rose.bmp" alt="Rose" />
    191 点击图片按钮会回发表单,HTTP请求消息为:
    192 GET /form/imgbutton.htm?password=123456&x=5&y=93 HTTP/1.1
    193 Accept: */*
    194 Referer: http://localhost:4346/DEMO/form/imgbutton.htm
    195 Accept-Language: zh-cn
    196 
    197 -------------------------------------------------
    198 注意,                           ******************
    199 在发送到服务器的数据中,除了文本框的值,还有:
    200 x=5&y=93
    201 这个是点击按钮时,光标落在图片的坐标。
    202 
    203 
    204 -------------------------------------------------
    205 隐藏输入框(input)
    206 用户不可见,但是隐藏输入框的值可以随着表单一起提交。
    207 <input type="hidden" name="password" value="123456" />
    208 
    209 
    210 常见的使用场合
    211 多页面收集用户信息。
    212 
    213 服务器需要三个页面收集用户数据。
    214 用户提交第一个页面,服务器把数据以隐藏字段的方式保存在第二个页面中。
    215 当用户提交第二个页面时,服务器把数据保存在第三个页面。
    216 用户提交第三个页面,完成。
    217 
    218 -------------------------------------------------
    219 标签(label)                   ********************
    220 有些HTML标签尺寸很小,比如单选框和多选框。希望点击单选框旁边的按钮和点击单选框的效果相同。
    221 
    222 示例:<label>标签常见的使用场景?
    223 <label for="blue">蓝色</label>
    224 <input type="radio" id="blue" value="blue" name="color" />
    225 
    226 注意:label标签中的for值和输入框中的id值须一致
    227 
    228 -------------------------------------------------
    229 id和name有什么区别呢?         ********************
    230 id 在整个页面是唯一的,没有任何两个HTML标签的id是一样的。
    231 name 用在向服务器发送数据时,保存HTML标签的值。
    232 可以有相同的name的HTML标签存在(比如相同name的radio是同一分组的)。
    233           
    234 -------------------------------------------------
    235 分组框(fieldset)             ********************
    236 分组框<fieldset>标签。
    237 <legend>标签来显示分组框标题。
    238 
    239 <fieldset style="200px;">
    240         <legend>选择颜色</legend>
    241         <ul>
    242             <li>蓝色<input type="radio" value="blue" name="color" /></li>
    243             <li>红色<input type="radio" value="red" checked="checked" name="color" /></li>
    244             <li>白色<input type="radio" value="white" name="color" /></li>
    245         </ul>
    246 </fieldset>
    247 
    248 -------------------------------------------------
    249 框架
    250 
    251 为什么使用frameset
    252 <frameset> 允许我们把很多页面组合成一个页面
    253 
    254 常见的应用场景
    255 一个frame中放置页面导航,另一个frame中放置页面内容,
    256 当点击页面导航时,只刷新页面内容。(部分刷新)
    257 -------------------------------------------------
    258 垂直分栏框架
    259 <frameset>的 cols 属性,定义垂直分栏的各列的宽度:
    260 
    261 示例:一个三列的框架,其中第一列占据150px的宽度,第二列占据10%的宽度,
    262 第三列占据剩余的宽度。
    263 
    264 <frameset cols="150, 10%, *">
    265     <frame src="1.htm" />
    266     <frame src="2.htm" />
    267     <frame src="3.htm" />
    268 </frameset>
    269 
    270 -------------------------------------------------
    271 水平分栏框架
    272 
    273 
    274 示例:
    275 <frameset rows="50, 10%, *">
    276     <frame src="1.htm" />
    277     <frame src="2.htm" />
    278     <frame src="3.htm" />
    279 </frameset>
    280 
    281 -------------------------------------------------
    282 水平分栏框架
    283 
    284 
    285 <frame>标签的属性
    286 frameborder="0“
    287 用来设置不显示分隔条
    288 noresize="noresize“
    289 则设置分隔条不可拖动
    290 scrolling=”no”
    291 不显示滚动条。
    292 
    293 -------------------------------------------------
    294 混合框架
    295 科大的bbs(http://bbs.ustc.edu.cn)使用框架
    296 
    297 <frameset cols="151, 10, *" framespacing="0" frameborder="no“ border="0">
    298     <frameset rows="*, 25" framespacing="0" frameborder="no" border="0">
    299           <frame name="f2" src="cgi/bbsleft" noresize>
    300           <frame scrolling="no" name="f2tty" src="tty.html" noresize>
    301         </frameset>
    302     <frame src="f5.html" name="f5" frameborder="no" scrolling="no" noresize>
    303     <frameset rows="0, *, 20" framespacing="0" frameborder="no" border="0">
    304           <frame name="f3" src="cgi/bbsindex" noresize>
    305           <frame scrolling="no" name="f4" src="cgi/bbsfoot" noresize>
    306       </frameset>
    307 </frameset>
    308 
    309 -------------------------------------------------
    310 框架之间导航
    311 框架中的链接可以在框架之间导航,通过设置<a> 标签的target属性。
    312 
    313 <a>的target属性和<frame>的name属性相对应。
  • 相关阅读:
    TypeScript 里 interface 和 type 的区别
    TypeScript 定义函数的几种写法
    什么是 TypeScript 里的 Constructor signature
    Linux 主要的发行系统版本介绍
    PHP跨域
    26. Remove Duplicates from Sorted Array
    关于hashmap的文章
    1. Two Sum
    qt5-资源与图像
    qt--QDialogButtonBox按钮盒
  • 原文地址:https://www.cnblogs.com/1020182600HENG/p/6051943.html
Copyright © 2020-2023  润新知