Web前端-Html4--form表单

                                            表单


        页面上的 输入框 按钮  单选 多选 这些可操作或者可编辑的控件
            都输入表单元素  

            表单的作用:就是负责采集用户的信息 作为数据收集

    表单里面包含哪些:


            表单控件:
                    输入框 密码框 单选 多选 多行文本 按钮  图片按钮 下拉框...

            提示信息:
                    用来提示用户的一些操作流程的步骤的文字展示


            表单域:
                    form表单标签  所有的表单控件和提示信息都要放到表单域的标签里面
                     表单域本身可以实现信息数据的收集与提交

    表单域(form):

    输入框:

         <input type="text">  type为text的表示  是输入框

         <input type="button">  表示按钮  value="按钮的文字"

<form action="">

        <input type="text">
        <br>
        <input type="button" value="我是按钮">


 </form>

form表单域:


       action: form表单提交的后台地址
        method:  提交方式  get或者post(放到后面知识点去讲)
                get方式 表单域不写是默认值

        表单域本身能够将数据提交给action所指向的后台地址

        表单域里面一旦有提交按钮 那么点击提交按钮时 会把当前表单域的所有数据
        提交给action指向的后台地址


    <input type="submit"> 提交按钮  value="修改提交按钮的默认文字(提交)"

    一旦表单域里面的控件具有name属性 那么的值是自己起的名字
        那么当前表单域提交时 就会把当前具有name的控件信息提交给后台
        如果是get方式 那么 就会在地址栏体现出来
        格式:
            action地址?键1=值1&键2=值2&...键n=值n

            控件 有name就提交 没有name就不提交


        如果是post方式 那么提交的数据不在地址栏(至于在哪 后面去讲)

<form action="http://www.baidu.com">
    <input type="text" name="username">
    <br>
    <input type="text" name="password">
    <br>
    <input type="submit" value="注册">

 </form>

常见的表单控件使用:


        输入框:
            input:type="text"
            属性:
                value="" 输入框的默认输入内容(以后用户输入的 也是在这里面)
                        那么name是表单提交时的键   value是表单提交时的值

                placeholder="" 输入框提示信息

                size="" 输入框的宽度

                readonly  表示内容不可以编辑  只读 (但是提交时 会被提交)

                disabled 表示内容不可用 (也不会被提交)
        密码框:
            input:type="password"
                属性 跟上面输入框 一毛一样!!!!!

        单选框:
            input:type="radio"
            实现单选的方式:  同一个name值的单选框实现单选
            单选的value值是用来提交的  而外面显示的文字是给用户看的

            选谁提交谁 不选则不提交

            属性:
                checked  默认选中

        多选框:
            input:type="checkbox"

            checked 默认选中

<form action="http://www.baidu.com">
<!-- value="我是内容" -->
    <input type="text" disabled size="60" name="username" placeholder="请输入手机号" value="我是内容">
    <br>
    <input type="password" name="password">
    <br>
    <input type="radio" checked name="gender" value="man">男
    <input type="radio" name="gender" value="woman">女
    <input type="radio" checked name="country" value="China">中国
    <input type="radio" name="country" value="USA">美国
    <br>
    <input type="checkbox" name="hobby" checked value="football">足球
    <input type="checkbox" name="hobby" value="blueball">蓝球
    <input type="checkbox" name="hobby" value="earthball">地球

    <br>
    <input type="checkbox" name="fruit" checked value="apple">苹果
    <input type="checkbox" name="fruit" value="bunana">香蕉
    <input type="checkbox" name="fruit" value="orange">橙子
     <p>
        <input type="submit">
        
     </p>
</form>

下拉框 (下拉菜单)
        选择哪一个option 就提交哪一个

        selected 默认显示的条目

<select name="city" >
       <option value="beijing">北京</option>
       <option value="sanhe">三河</option>
       <option selected value="yanjiao">燕郊</option>
       <option value="fangshan">房山</option>
       
   </select>

 多选菜单:
            在select下拉菜单基础上 添加一个 multiple

<select name="fruit" multiple>
       <option value="apple">苹果</option>
       <option value="orange">橙子</option>
       <option value="banana">香蕉</option>
       <option value="yingtao">樱桃</option>
   </select>

 多行文本框
        textarea

        placeholder="请输入你的描述"

         cols="30" 多少列
          rows="10" 多少行

 <textarea name="mtext"  cols="30" rows="10">嘿嘿
  
  </textarea>

专门用来显示提示信息的
            以后可以通过css改变文字样式

      其实label有一个非常好用的功能:
            跟输入框绑定
            label的for如果关联一个input的id
            那么点击label时  输入框也会获得焦点可以输入

        
        提交按钮:
            input:type="submit" 
                专门放在form表单里面  用来点击提交表单数据的按钮

        普通按钮:
            input:type="button"
                专门用来结合JavaScript 实现点击效果的
                现在没学JavaScript 所以现阶段就是按着玩 没啥作用

        重置按钮
            input:type="reset"
                把当前表单的所有控件的值回归到初始值

<label for="mobile">在此输入手机号</label>
  <input type="text" id="mobile" value="哈哈,我是默认值">


    <p>
        <input type="submit">

    </p>
    <p>
        <input type="button" value="按着玩">
    </p>
    <p>
        <input type="reset">
    </p>

form剩余控件

<form action="http://www.baidu.com">


<p>
    <input type="text" name="username">

</p>
<p>
    <!-- 用户看不见 用来传输一些不需要用户操作的数据 -->
    <input type="hidden" name="time" value="2019-11-29 15:16:24">
</p>

<p>
    <input type="submit" value="注册">
</p>
<!-- 以图片为提交按钮  具有提交功能-->
<p>
    <input type="image" src="33.gif">
</p>
<!-- 文件域 -->
<p>
    <input type="file" name="file">

</p>

<p>
        <!-- 默认具有提交功能的按钮 -->
    <button>我也是提交按钮</button>
    <!-- 重置功能的按钮 -->
    <button type="reset">我是重置按钮</button>
    <!-- 按着玩的按钮(后面结合js使用的) -->
    <button type="button">我是按着玩的</button>
    <!-- type默认是submit -->
    <button type="submit">我是不写type默认就是提交的按钮</button>

</p>



</form>

关于文件上传的配置:

 

        第一步:
            把form表单的method改成post
            因为get上传实在地址栏 根本无法完成上传(文件太大)

        第二步:
            把form表单的默认提交方式从原来的字符串 变成二进制流的方式提交

            form表单的ecntype属性默认是  
            application/x-www-form-urlencoded(默认地址栏的字符串上传)

            需要改成:
                multipart/form-data(多部分 form表单数据流的方式)

<form action="http://www.baidu.com" method="post" enctype="multipart/form-data">
 <p>
    <input type="file" name="file">
</p>
<button>上传</button>

 表单分组:


            把表单里面时同一块内容的分到一个组里面
            让表单的结构内容更清晰

            fieldset(分组)   legend(分组的名字)
 

<form action="#">
   <fieldset>
        <legend>手机号注册方式</legend>

         <p>
            <label for="mobile">输入手机号</label>
            <input type="text" id="mobile" name="mobile">
        </p>
        <p>
            <button>手机号注册</button>
        </p>



   </fieldset>


    <fieldset>
        <legend>邮箱注册方式</legend>
        <p>
            <label for="email">输入邮箱</label>
            <input type="text" id="email" name="email">
        </p>
        <p>
            <button>邮箱注册</button>
        </p>



    </fieldset>



</form>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值