博客列表 >细说表单与控件元素

细说表单与控件元素

暝皑祯π_π
暝皑祯π_π原创
2020年04月06日 12:56:09616浏览

表单元素<form>

常用属性

序号 属性 描述
1 action 表单提交的 URL 地址(处理表单请求的脚本)
2 method 表单提交类型:GET/POST
3 enctype 设置表单提交数据的编码方式
4 name 表单唯一名称,与 ID 同义
5 target 打开请求 URL 的方式,如果_blank

示例

  1. <form
  2. action="handle.php"
  3. method="post"
  4. enctype="application/x-www-form-urlencoded"
  5. id="register"
  6. >
  7. </form>

<input>控件

常用属性

序号 属性 描述
1 type 控件类型,如文本框, 复选框…
2 name 请求参数的名称,对应于脚本处理的变量名
3 value 请求参数的值,对应于脚本处理的变量值,使用预定义值控件无效
4 form 控件所属表单
5 placeholder 仅限输入框textpassword,输入框的提示信息
6 list 仅限输入框textpassword,下拉框智能提示
7 autocomplate 仅限输入框textpassword,自动完成(历史记录)
8 maxlength 仅限输入框text/password, 允许输入最大字符数量
9 checked 仅限单选框radio, 复选框checkbox(布尔属性)
10 readonly 元素只读,但通过 JavaScript 可修改(布尔属性)
11 disabled 元素禁用,(布尔属性)
12 autofocus 自动获取焦点,一个表单仅限一个控件
13 src 仅限图像域images, 图像 URL 地址
14 width 仅限图像域images, 图像宽度
15 height 仅限图像域images, 图像高度

type类型

常用类型

序号 类型 描述
1 <input type="text"> 单行文本框 (默认值)
2 <input type="password"> 密码输入框
3 <input type="radio"> 单选框
4 <input type="checkbox"> 复选框
5 <input type="image"> 图像域/提交表单
6 <input type="file"> 文件上传域
7 <input type="hidden"> 隐藏域

新增类型

序号 类型 描述
1 <input type="email"> 电子邮件
2 <input type="data"> 日期
2 <input type="data"> 日期
4 <input type="datetime-local"> 本地日期时间
5 <input type="tel"> 电话号码
6 <input type="url"> URL 地址
7 <input type="number"> 数值
8 <input type="range"> 范围拖动条
9 <input type="search"> 搜索框/移动
10 <input type="color"> 拾色器

常用事件属性

序号 事件属性 描述
1 onfocus 获取焦点时触发
2 onblur 失去焦点时触发
3 onchange 失去焦点,且值发生变化时触发
4 oninput 值发生变化(不等失去焦点)时触发
5 onkeydown 按下键盘时触发
6 onkeyup 抬起键盘时触发
7 onclick 鼠标单击时触发
8 onselect 选择内容文本时触发

示例:

1.创建单行文本

  1. <section>
  2. <form action="1.php" method="POST" id="1" target="=blank"></form>
  3. <label for="denglu">用户名:</label>
  4. <input
  5. type="text"
  6. name="denglu"
  7. id="denglu"
  8. autofocus
  9. required
  10. placeholder="不少于3个字"
  11. maxlength="8"
  12. form="1"
  13. autofocus
  14. />
  15. </section>

2.密码框

  1. <section>
  2. <label for="mima">密码:</label>
  3. <input type="password" name="mima" id="mima" placeholder="中文和字母的组合" form="1"/><br>
  4. <label for="mima2">确认密码</label>
  5. <input type="password" name="mima" id="mima2" placeholder="再次输入" form="1"/>
  6. </section>

3.单选框

  1. <section>
  2. <label for="gender">性别</label>
  3. <input type="radio" name="gender" id="man" value="男人" checked form="1"/><label for="man">男人</label>
  4. <input type="radio" name="gender" id="woman" value="女人" form="1"/><label for="woman">女人</label>
  5. <input type="radio" name="gender" id="baomi" value="保密"form="1"/><label for="gender">保密</label>
  6. </section>

4.文件域和隐藏框

  1. <section>
  2. <label for="wenjian">上传文件</label>
  3. <input type="file" name="wenjian" id="wenjian" form="1">
  4. <input type="hidden" name="MAX_FILE_SIZE" value="10240" form="1">
  5. </section>

5.复选框

  1. <section>
  2. <label for="interest">兴趣:</label>
  3. <div>
  4. <input type="checkbox" name="interest[]" id="game" value="游戏"><label for="game" form="1">游戏</label>
  5. <input type="checkbox" name="interest[]" id="sheyin" value="摄影"><label for="sheyin" form="1">摄影</label>
  6. <input type="checkbox" name="interest[]" id="biancheng" value="编程" checked><label for="biancheng" form="1">编程</label>
  7. <input type="checkbox" name="interest[]" id="changge" value="changge"><label for="changge" form="1">唱歌</label>
  8. </div>
  9. </section>

6.预定义复选框

  1. <section>
  2. <label for="xuexi">学习</label>
  3. <input type="text" name="xuexi" list="xuexi" form="1">
  4. <datalist id="xuexi">
  5. <option value="html"></option>
  6. <option value="css"></option>
  7. <option value="javascript"></option>
  8. <option value="php"></option>
  9. </section>

7.图像域

  1. <section>
  2. <input type="image" src="shuangchuanshu.png" alt="tupian" name="submit" width="100" form="1">
  3. </section>

8.邮件框

  1. <section>
  2. <label for="email">邮箱:</label>
  3. <input type="email" name="email" id="email" form="1">
  4. </section>

9.年龄框

  1. <section>
  2. <label for="age">年龄:</label>
  3. <input type="number" name="age" id="age" min="18" max="60" form="1">
  4. </section>

10.下拉列表框

  • 下拉列表使用<select> + <optgroup> + <option>组合元素实现
  • 参数名name定义在<select>中,参数值value,定义在<option>

<select>属性

序号 属性 描述
1 name 请求参数名称/变量名
2 multiple 是否允许多选(布尔属性)
3 size 允许同时显示的列表项
3 disabled 是否禁用(布尔属性)

<optgroup>属性

属性 描述
label 列表分组名称

<option>属性

序号 属性 描述
1 value 请求参数的值
2 label 默认选项文本值
3 selected 是否选中(布尔属性)
3 disabled 是否禁用(布尔属性)

<select>事件属性

序号 事件属性 描述
1 onchange 当下拉列表选项值发生变化时才会触发
2 onclick 只要点击就会触发(选项值可以不改变)
  1. <section>
  2. <form action="" method="POST">
  3. <select name="_shuiguo" id="" size="10" multiple>
  4. <optgroup label="水果">
  5. <option value="banana" label="香蕉"></option>
  6. <option value="apple" label="苹果"></option>
  7. <option value="grape" label="葡萄"></option>
  8. <option value="dragon" label="火龙果"></option>
  9. <option value="pepper" label="辣椒" disabled></option>
  10. </optgroup label="课程">
  11. <option value="php" label="php"></option>
  12. <option value="html" label="html"></option>
  13. <option value="css" label="css"></option>
  14. </select>
  15. </form>
  16. </section>

11.多行文本域

常用属性

序号 属性 描述
1 cols 文本域可视宽度
2 rows 文本域可输入的行数
3 name 文本域参数名称
4 form 绑定所属表单元素
5 minlength 允许输入最小字符长度
6 maxlength 允许输入最大字符长度
7 maxlength 允许输入最大字符长度
8 placeholder 提示信息占位符
9 wrap 换行方式:hard/soft默认
10 disabled 禁用(布尔属性)
11 autofocus 自动获取焦点(布尔属性)
12 autocomplete 自动完成(布尔属性)
  1. <section>
  2. <textarea
  3. name="reply"
  4. id=""
  5. cols="30"
  6. rows="10"
  7. minlength="5"
  8. maxlength="50"
  9. form="1"
  10. placeholder="不超过50字符"
  11. >
  12. </textarea>
  13. </section>

表单域分组元素<fieldset>

  • 当表单字段非常多时,分组管理很有必要,例如将必填项与选填项分开
  • 它只有一个子元素<legend>,设置分组标题

常用属性

序号 属性 描述
1 name 分组名称
2 form 分组所属表单,默认是最近的表单
3 disabled 禁用分组(布尔属性)

示例

  1. <fieldset name="one" form="1">
  2. <legend>基本信息 </legend>
  3. <section>
  4. <input type="email"
  5. nema="email"
  6. placeholder="请输入你的邮箱"
  7. form="1"
  8. >
  9. <input type="password"
  10. name="mima"
  11. placeholder="密码"
  12. form="1"
  13. >
  14. <input type="password"
  15. neme="mima2"
  16. placeholder="确认密码"
  17. form="11">
  18. </section>
  19. </fieldset>
  20. <fieldset name="two" form="1">
  21. <legend>选填信息</legend>
  22. <section>
  23. <input type="text"
  24. name="nickkname"
  25. placeholder="你的昵称"
  26. form="1">
  27. <input type="tel"
  28. name="tel"
  29. placeholder="你的电话"
  30. >
  31. <input type="number" name="age" min="18" max="60" step="1" placeholder="你的年龄" form="1">
  32. </section>
  33. </fieldset>

按钮控件元素<button>

<input>对比

序号 <button> 替代的<input>
1 <button type="...">按钮文本</button> <input type="..." value="按钮文本">
2 <button><img src="..."></button> <input type="image" src="...">图像域

常用属性

序号 属性 描述
1 type 必须使用预定义的submit, button, reset之一
2 name 按钮的唯一名称,与 ID 等效
3 value 按钮文本初始值,可通过 JavaScript 修改
4 disabled 禁用按钮
5 form 按钮所属表单(此时按钮type默认类型为submit提交)
6 formaction 设置不同按钮可将表单数据提交到不同的 URL 处理
7 form*** 动态设置<form>属性值,如formmethod="GET"

示例

  1. <button type="submit" name="tijiao" form="1" formaction="1.php" formmethod="POST">
  2. 提交
  3. </button>

感想

表单是数据提交的重要手段,快速创建表单可以为css和js添加样式提供更好的基础。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议