zoukankan      html  css  js  c++  java
  • 【表单】专题解析

    表单(form)由表单元素组成。常用的表单元素有以下几种标记:输入域标记<input>、选择域标记<select>和<option>、文本域标记<textarea>等。下面分别进行介绍。

    1.输入域标记<input>

    输入域标记<input>是表单中最常用的标记之一。常用的文本域、按钮、单选按钮及复选框等构成了一个完整的表单。

    语法:

    <form>
    <input name="filed_name" type="type_name">
    </form>

    参数name是指输入域的名称,参数type是指输入域的类型。在<input type="">标记中一共提供了10种类型的输入区域,用户所选择使用的类型由type属性决定。type属性取值及举例如表9.3所示。

    表9.3  type属性取值及举例

     

    续表

     

    2.选择域标记<select>和<option>

    通过选择域标记<select>和<option>可以建立一个列表或者菜单。菜单节省空间,正常状态下只能看到一个选 项,单击按钮打开菜单后才能看到全部的选项。列表可以显示一定数量的选项,如果超出了这个数量,会自动出现滚动条,浏览者可以通过拖动滚动条来查看各选 项。

    语法:

    1 <select name="name" size="value" multiple>
    2  <option value="value" selected>选项1</option>
    3  <option value="value">选项2</option>
    4  <option value="value">选项3</option>
    5
    6  </select>

    参数name表示选择域的名称;参数size表示列表的行数;参数value表示菜单选项值;参数multiple表示以菜单方式显示数据,省略则以列表方式显示数据。

    选择域标记<select>和<option>的显示方式及举例如表9.4所示。

    表9.4  选择域标记<select>和<option>的显示方式及举例

     

    语句动态添加菜单项。

    3.文本域标记<textarea>

    文本域标记<textarea>用来制作多行的文本域,可以在其中输入更多的文本。

    语法:

    1 <textarea name="name" rows=value cols=value value="value" warp="value">
    2 …文本内容
    3 </textarea>

    参数name表示文本域的名称;rows表示文本域的行数;cols表示文本域的列数(这里的rows和cols以字符为单位);value表示文 本域的默认值。warp用于设定显示和送出时的换行方式,值为off表示不自动换行;值为hard表示自动按Enter键换行,换行标记一同被发送到服务 器,输出时也会换行;值为soft表示自动按Enter键换行,换行标记不会被发送到服务器,输出时仍然为一列。

    文本域标记<textarea>的值及举例如表9.5所示。

    表9.5  文本域标记<textarea>的值及举例


     

     

     

     


    ====================分============割============线==========================

    表单

    表单是用来与服务端交换数据的主要方式。你在浏览器中所看到的页面是保存在服务器上的, 当你在地址栏输入站点地址时,页面内容通过http协议下载到你的计算机上。要将页面上的内容提交给服务端,从形式上看有2种, 即前面已经学过的链接<a href="url">......</a>和表单<form>......</form>。 如果按方式可分为get和post二种,链接便属于get方式,表单既可为get方式,也可以是post方式。

    所谓提交,就是将对象的名字和内容通过fttp协议传送到服务端,服务端根据名字得到其相应的内容。 必须要有服务端才能提交,服务端可以是ASP、CGI、PHP、JSP或Servlet等,另外还必须有相应的页面来接受处理并反馈内容。 有人将表单提交给email,说“这不是没有服务端吗?”,email是有服务器的,可以作为服务端的一种。

    不是所有的内容都可以提交,用表单来提交时,只有特定的对象才能提供,这些对象是:文字输入框(Text)、 多行文字输入框(TextArea)、口令输入框(Password)、隐含框(Hidden)、单选按钮(Radio)、检查框按钮(CheckBox)、选择框(包括组合框、 列表框、选项分给框)、文件选择框(File)、对象分组(FieldSet)。另外还有起辅助作用的对象:标签(Label)、普通按钮(Button)、提交按 钮(Commit)、复位按钮(Reset)、自由设计的按钮(Button)。

    表单的提交是通过提交按钮来实现的,不提交的话,表单就失去意义。当然,通过JavaScript可以将get方式和post方式转换, 以及灵活的提交方式。提交的实质是将对象的名称和值传送到服务端,服务端根据名称找到相应的值,因此,name=*和value=**相当重要。 一个网页可以有多个表单,但只能提交其中的一个。

    本章将提到一个新的属性id,早期的html语法中没有,高版本中新增加后用来控制对象。id属性纯粹是客户端的, 提交到服务端时仅仅name和value有作用。几乎所有元素都有id属性。

    <form action="url" method="get/post">
         ...
         ...
        <input type="commit">
    </form>

    文字输入(TextBox)和密码输入(Password)
        <input type="text" name="*" value="**">
        <input type="hidden" name="*" value="**">
    <input type="text" name="mytext" value="小雅软件学习网">
    <input type="password" name="mypsswd">

    多行文字输入(TextArea)和隐藏输入(Hidden)、文件选择(FileOption)
        <textarea name="*" rows="行数" cols="列数">...</textarea>
        <input type="password" name="*" value="**">
        <input type="file" name="*" value="**" accept="MIMEtype">
    <textarea name="mytext" rows="3">
        苏州
        无锡
        常州
    </textarea>
    <input type="hidden" name="myhide">这儿有个隐藏对象 这儿有个隐藏对象
    <input type="hidden" name="myhide" accept="image/jpeg,image/gif">

    复选框(CheckBox) 和 单选框(RadioButton)
        <input type="checkbox/radio">
        <input type="checkbox/radio" checked>
        <input type="checkbox/radio" name="*" value="**">
        注意下面的例子,选项的name是同一个,对于单选框对应的值只有一个,而对于复选框其相应的值可能是多个,在服务端将产生一个数组与值对应。
    有checked属性的项将被选中,对于radio按钮如果有多个选项checked,则最后一个有效。
    <input type="checkbox" name="myck" value="cz" checked>常州
    <input type="checkbox" name="myck" value="wx" checked>无锡
    <input type="checkbox" name="myck" value="sz">苏州
    常州
    无锡
    苏州
    <input type="radio" name="myradio" value="cz">常州
    <input type="radio" name="myradio" value="wx">无锡
    <input type="radio" name="myradio" value="sz" checked>苏州
    常州
    无锡
    苏州

    组合框(ComboBox) 和 列表框(Listbox)
        <select name="*">
            <option value="**">...</option>
            <option value="**" selected>...</option>
        </select>
        <select name="*" size="***" multiple>
            <option value="**">...</option>
            <option value="**" selected>...</option>
        </select>
        属性value用于提交,省略时将用<option>与</option>之间的内容代替。multiple属性通常省略,不省略时则可以多选,提交时将产生一数组来与名称对应。selected属性表示当前选项。
    <select name="mycombo">
        <option value="cz">常州</option>
        <option value="wx" selected>无锡</option>
        <option value="sz">苏州</option>
    </select>

    <select name="mycombo" size="3">
        <option value="cz">常州</option>
        <option value="wx" selected>无锡</option>
        <option value="sz">苏州</option>
    </select>


    选项分组(ItemGroup)
        <select name="*">
            <optgroup label="**" value="***">
                <option label="**" value="***" selected>...</option>
            </option>
        </select>
        该元素不常用,在ie5.x和ie6.x上的显示也不同。option元素的属性label在ie5.x上用于显示文本,在ie6.x不起作用。
    <select name="mycombo">
    <optgroup label="苏南">
        <option label="Changzhou" value="cz">常州</option>
        <option label="Wuxi" value="wx" selected>无锡</option>
        <option label="Suzhou" value="sz">苏州</option>
    </optgroup>
    <optgroup label="苏北">
        <option label="Yangzhou" value="yz">扬州</option>
        <option label="Nantong" value="nt">南通</option>
        <option label="Xuzhou" value="xz">徐州</option>
    </optgroup>
    </select>


    分组和标签
        <fieldset>
            <legend>...</legend>
        </thead>
        <label for="对象id">...</label>
    分组和标签只起辅助作用,不提交到服务端。当鼠标点中标签时,同时便也点中了相应的对象。
    <fieldset>
    <legend>苏南</legend>
        <label for="id11">组合框</label>
        <select name="sn" id="id11">
            <option value="cz">常州</option>
            <option value="wx" selected>无锡</option>
            <option value="sz">苏州</option>
        </select>
        <input type=radio name=mycheck value=cz id="id12">
        <label for="id12">单选按钮1</label>
        <input type=radio name=mycheck value=cz id="id13">
        <label for="id13">单选按钮2</label>
    </fieldset>
    <fieldset>
    <legend>苏北</legend>
        <label for="id21">列表框</label>
        <select name="sb" size="3" id="id21">
            <option value="yz">扬州</option>
            <option value="nt">南通</option>
            <option value="xz" selected>徐州</option>
        </select>
        <input type=checkbox name=mycheck value=cz id="id22">
        <label for="id22">多选按钮1</label>
        <input type=checkbox name=mycheck value=cz id="id23">
        <label for="id23">多选按钮2</label>
    </fieldset>
    苏南







    苏北

    按钮(button)
        <input type="button" name="*" value="**">
        <button type="button" name="*" value="**">...</button>
    <input type="button" name="mybutton1" value="我的对话框" onClick="alert('小雅软件欢迎你')">
    <button type="button" name="mybutton2" alt="MyButton2" onClick="alert('小雅软件欢迎你')">
        <image src="image/i10_01.gif"><br>
        我的对话框
    </button>


    提交按钮(submit)和重置按钮(reset)
        <input type="summit" name="*" value="**">
        <input type="image" sre="URL" name="*" alt="**">
        <input type="reset" name="*" value="**">
      提交按钮只有在表单<form>...</form>内使用才有意义。
    <input type="button" name="mybutton1">
    <input type="button" name="mybutton2" value="发送">
    <input type="image" src="image/i10_03.gif" name="mybutton3">


    <input type="button" name="mybutton1">
    <input type="button" name="mybutton1" value="清除">


    提交和重置综合演示
      提交需要服务端,小雅软件学习网暂时没有固定服务器,本演示是用JavaScript模拟,让你能看到提交后在服务端能得到什么内容。
    <form name=ouform action="#" method="post">
        <input type=checkbox name=oucheck value=cz checked>常州<br>
        <input type=checkbox name=oucheck value=wx checked>无锡<br>
        <input type=checkbox name=oucheck value=sz>苏州<br>
        <input type=radio name=ouradio value=cz>常州<br>
        <input type=radio name=ouradio value=wx>无锡<br>
        <input type=radio name=ouradio value=sz checked>苏州<br>
        <select name="oucombo">
            <option value="cz">常州</option>
            <option value="wx" selected>无锡</option>
            <option value="sz">苏州</option>
        </select><br>
        <select name="oulist" size="3">
            <option value="cz">常州</option>
            <option value="wx" selected>无锡</option>
            <option value="sz">苏州</option>
        </select><br>
        <input type=text name=ouedit value=小雅软件学习网><br>
        <input type=password name=oupasswd><br>
        <textarea name="outextarea" rows="3" cols="20">
            苏州
            无锡
            常州
        </textarea><br>
        <input type=hidden name=ouhide value="我是隐藏对象">这儿有个隐藏对象<br>
        <hr>
        <input type="button" name="ousubmit" value="提交" onClick="result()">
        <input type="reset" name="oureset" value="清除">
    </form>
    常州
    无锡
    苏州
    常州
    无锡
    苏州





    这儿有个隐藏对象




    申明:本文转自小雅,如损害作者权利,请留言我删除。

  • 相关阅读:
    KBEngine:记录
    h5游戏研讨
    Django部署方法
    JQuery Advanced
    Web从入门到放弃<7>
    Web从入门到放弃<6>
    Web从入门到放弃<5>
    Web从入门到放弃<4>
    Web从入门到放弃<3>
    Web从入门到放弃<2>
  • 原文地址:https://www.cnblogs.com/tangge/p/2036202.html
Copyright © 2011-2022 走看看