form表单

功能:表单用于向服务器传输数据,从而实现用户与Web服务器的交互

表单能够包含input系列标签,比如文本字段、复选框、单选框、提交按钮等等。

表单还可以包含textarea、select、fieldset和 label标签。

表单属性

action: 表单提交到哪.一般指向服务器端一个程序,程序接收到表单提交过来的数据(即表单元素值)作相应处理,比如https://www.sogou.com/web

method: 表单的提交方式 post/get默认取值就是get

注意啦!!!!

from表单:实现用户与web服务器的交互
以键值对的形式发过去{"":"haiyan","":"123"}
如果没有name属性,你的数据是不过去的
name:键名 请求server端的方式:
get:请求会放在url后面 username=yaun&password =123
post:请求会放在请求体里 关于 url的内容
url: https://www.baidu.com(协议:域名(也是ip+端口))
url: http:127.0.0.1:8800/blog/addBlog(协议:ip:端口/)
url: http:127.0.0.1:8800/blog/addBlog?username = yuan http:协议
127.0.0.1:8800:ip地址与端口
blog/addBlog:url的路径(path)
username = yuan:get请求数据 请求协议:
浏览器发给服务器(get请求,post请求)
格式:
请求首行
请求头:就是一组组键值对
换行 \n,\n\r
请求数据:有两种方式
if get :
url?data
if post :
请求数据 get请求:安全性差,数据量有限(当设计到查询的时候会用到get请求)
那些是get请求(一般都是查询数据库操作):
1.url访问server端
2.超链接访问,即a标签
post请求:相对于get安全点,,但是没有绝对的安全(修删改可以用post) 相应协议:

表单元素

基本概念:
HTML表单是HTML元素中较为复杂的部分,表单往往和脚本、动态页面、数据处理等功能相结合,因此它是制作动态网站很重要的内容。
表单一般用来收集用户的输入信息
表单工作原理:
访问者在浏览有表单的网页时,可填写必需的信息,然后按某个按钮提交。这些信息通过Internet传送到服务器上。 
服务器上专门的程序对这些数据进行处理,如果有错误会返回错误信息,并要求纠正错误。当数据完整无误后,服务器反馈一个输入完成的信息

<input>系列标签

'''
<1> 表单类型

  text 文本输入框
       value:设置默认值
       placeholder:设置占位内容   password 密码输入框   radio 单选框   checkbox 多选框   submit 提交按钮   Reset 重置按钮   button 按钮(需要配合js使用.) button和submit的区别?   file 提交文件:form表单需要加上属性method = "post" enctype="multipart/form-data"   上传文件注意两点:
     1.请求方式必须是post
     2.enctype="multipart/form-data" <2> 表单属性   name:表单提交项的键. 注意和id属性的区别:name属性是和服务器通信时使用的名称;
而id属性是浏览器端使用的名称,该属性主要是为了方便客户端编程,而在css和javascript中使用的   value: 表单提交项的值.对于不同的输入类型,value 属性的用法也不同:

  type:输入类型
type="button", "reset", "submit" - 定义按钮上的显示的文本 type="text", "password", "hidden" - 定义输入字段的初始值 type="checkbox", "radio", "image" - 定义与输入相关联的值  默认选择: 
  checked: radio 和 checkbox 默认被选中   readonly: 只读. text 和 password   disabled: 对所用input都好使. '''

select标签

'''
<select> 下拉选标签属性
name:表单提交项的键.
size:选项个数
multiple:multiple
<optgroup>为每一项加上分组
<option> 下拉选中的每一项 属性:
value:表单提交项的值.
selected: selected下拉选默认被选中 '''

<textarea> 多行文本框

‘’''

<form id="form1" name="form1" method="post" action="">
<textarea cols=“宽度” rows=“高度” name=“名称”>
默认内容
</textarea>
</form> '''

<label>标签

定义:<label> 标签为 input 元素定义标注(标记)。
说明:
1 label 元素不会向用户呈现任何特殊效果。
2 <label> 标签的 for 属性值应当与相关元素的 id 属性值相同。

'''

<form method="post" action="">

        <label for=“username”>用户名</label>
<input type=“text” name=“username” id=“username” size=“20” />
</form> '''

<fieldset>标签

'''

<fieldset>
<legend>登录吧</legend>
<input type="text">
</fieldset> '''

实例

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>注册页面</title>
</head>
<body>
<h3>注册页面</h3>
<!--action放的是ip地址和端口-->
<!--method放的是请求方式-->
<form action="" method="post">
<hr size="5" color="red">表单中input系列
<label for="c1"> <!--label标签就是把下面的姓名关联起来-->
<p>姓名:<input type="text" name="username" id="c1"></p>
</label>
<!--#当你不输入的时候有个默认的value值-->
<p>密码:<input type="password" name="password" value="123"></p>
<!--单选框ridio-->
<p>性别:<input type="radio" name = gender value="male">男:<input type="radio" name="gender" value="female">女</p>
<!--复选框checkbox-->
<p>爱好:<input type="checkbox" name="hobby" value="basketball">篮球<input type="checkbox" name="hobby" value="football">足球<input type="checkbox" name="hobby" value="sport">运动</p>
<!--文件-->
<p>头像:<input type="file" name="fileobj"></p>
<hr size="5" color="red">上面的value和下面的value是不一样的,上面的是发送请求的,下面的是修改值的
<!--重置-->
<p><input type="reset" value="reset"></p>
<!--其实是submit按钮把数据提交到action指定的地址了-->
<p><input type="submit"></p>
<!--空按钮 当你输入值才有内容-->
<!--onclick:鼠标点击事件-->
<p><input type="button" value="按钮" onclick="alert('确定')"></p>
<!--onmouseover:鼠标指到上面就触发-->
<p><input type="button" value="按钮" onmouseover="alert('确定')"></p>
<!--隐藏:不想让用户看见-->
<p><input type="hidden" name="sss" value="sds"></p>
<!--文本域-->
<p>个人简历<br>
<textarea name="selfinfo" cols="30" rows="10"></textarea>
</p>
<fieldset>海燕啊啊啊啊啊啊啊</fieldset>
<!--下拉框-->
<hr size="5" color="red">表单中select系列
<select name="provice" size="5" multiple="multiple" >
selected设置默认选择。如果select里有multiple属性,那么可以在option里面设置多个selected
<option value="hebei" selected="selected">甘肃省</option>
<option value="henan" selected="selected">河南省</option>
<option value="hebei">湖北省</option>
<option value="shanxi">陕西省</option>
</select>
<fieldset>
<legend>登录吧</legend>
<input type="text">
</fieldset> </form>
<!--以键值对的形式发过去{"":"haiyan","":"123","gender":"male","hobby":["basketball","football"],"fileobj":"fileobj"}-->
<!--如果没有name属性,你的数据是发不过去的-->
<!--name:键名-->
</body>
</html>

 

web前端----html表单操作的更多相关文章

  1. 基于JQuery的前端form表单操作

    Jquery的前端表单操作:     jquery提供了良好的方法封装,在一些基本的操作的时候,能节省很多的麻烦,其中,在具体使用时,form表单的数据提交是最频繁也最常见的前后数据交换方式,所以在前 ...

  2. MVC身份验证.MVC过滤器.MVC6关键字Task,Async.前端模拟表单验证,提交.自定义匿名集合.Edge导出到Excel.BootstrapTree树状菜单的全选和反选.bootstrap可搜索可多选可全选下拉框

    1.MVC身份验证. 有两种方式.一个是传统的所有控制器继承自定义Control,然后再里面用MVC的过滤器拦截.所以每次网站的后台被访问时.就会先走入拦截器.进行前端和后端的验证 一个是利用(MVC ...

  3. web网页的表单排版利器--960css

    表单排版样式 960css 前言 一般web网页的表单排版,大家都习惯用table排版,自己需要根据实际需要去定义TR和TD,很多时候对于TD的高宽度.是否合并行,合并列,都要去做一些处理,这些都是比 ...

  4. ASP.NET Web Pages:表单

    ylbtech-.Net-ASP.NET Web Pages:表单 1.返回顶部 1. ASP.NET Web Pages - HTML 表单 表单是 HTML 文档中放置输入控件(文本框.复选框.单 ...

  5. 前端-form表单与CSS

    目录 form表单 表单属性 label标签 input标签 select 下拉框标签 textarea多行文本 提交 Flask 结合form表单 初探 CSS介绍以及基本选择器 基本选择器 组合选 ...

  6. Django之form表单操作

    小白必会三板斧 from django.shortcuts import render,HttpResponse,redirect HttpRespone:返回字符串 render:返回html页面 ...

  7. 【JavaScript】DOM之表单操作

    DOM 表单操作 1.获取表单 获取表单元素 以Document对象中forms属性来获取当前HTML页面所有表单集合以Document对象中表单的name属性值来获取表单元元素 <body&g ...

  8. python -使用Requests库完成Post表单操作

    """ 使用Requests库完成Post表单操作 """ #_*_codingn:utf8 _*_ import requests fro ...

  9. Web暴力破解--前端JS表单加密进行爆破

    0x01 前言 常见的js实现加密的方式有:md5.base64.shal,写了一个简单的demo作为测试. 0x02 代码 login.html <!DOCTYPE HTML> < ...

随机推荐

  1. 彻底关闭window10 专业版 企业版 windows defender

    按照上面图中的,关闭windows defender 设置为已启用,这样就可以彻底关闭 windows defender了

  2. ICSharpCode.SharpZipLib.dll 压缩多文件

    网站:http://icsharpcode.github.io/SharpZipLib/ 引用:ICSharpCode.SharpZipLib.dll private string CompassZi ...

  3. HOJ-2056 Bookshelf(线性动态规划)

    L is a rather sluttish guy. He almost never clean up his surroundings or regulate his personal goods ...

  4. MapReduce规约

    深入了解Combiners编程(相当于Map端的Reduce) 每一个map可能会产生大量的输出,combiner的作用就是在map端对输出先做一次合并,以减少传输到reducer的数据量. comb ...

  5. UOJ 145 - 神奇的幻方 - [简单数学题]

    题目链接:http://uoj.ac/problem/145 题目描述 幻方是一种很神奇的 N∗N 矩阵:它由数字 1,2,3,⋯⋯,N×N 构成,且每行.每列及两条对角线上的数字之和都相同. 当 N ...

  6. 加入到java后台开发

    下载java环境安装包 http://www.oracle.com/technetwork/java/javase/overview/index.html 下载eclipse j2ee版本 http: ...

  7. maven package install deploy区别

    package 命令完成了项目编译.单元测试.打包功能,但没有把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库install 命令完成了项目编译.单元测 ...

  8. java连接数据库时的报错

    //java连接数据库时的报错 1 package Java数据库编程; import java.sql.DriverManager; import java.sql.SQLException; im ...

  9. redis连接池的标准用法:

    from .conf import HOST, PORT, POOL_NAME import redis redis_pool = redis.ConnectionPool(host=HOST, po ...

  10. C++ 指向数组的指针

    如果您对 C++ 指针的概念有所了解,那么就可以开始本章的学习.数组名是一个指向数组中第一个元素的常量指针.因此,在下面的声明中: double balance[50]; balance 是一个指向 ...