在前后端交互的过程中,除了ajax请求之外,最常见的就是表单请求了。

由于form表单属性多,表单标签内容多且复杂,不深究的话很难全面的弄明白。

接下来就来详细的说一说整个form表单都有些什么,并且如何去使用。

(一)form表单标签内的属性

  1.最重要的两个属性:action  method

  action:指定一个URL地址用于向该地址发送表单数据;

  method:规定是按照何种方式发送数据;

  method可以填的值如下:

  get:以get方式请求,表单数据会以?连接数据放在URL内一并发送,每组数据直接用&连接。这种方式不安全,容易被截取。

  post:以post发送请求,表单数据会以一个对象的方式放在请求体中进行发送。

  //在前端中最常见的两个请求方式就是get 和 post 。get和post其实两个方法都差不多的。对于前端发送数据给服务器而言多半用post请求

处于安全性考虑,post请求的安全性要高一些。

  除了post和get还可以填:options head delete trace connect

  这些请求方法需要服务器端的配合才可以,不同的类型对应这服务器不同的操作,对于前端而言很少用也不会让你这样乱用。在编程上与

post和get请求差不多。

<form action="https://www.w3school.com.cn/example/html5/demo_form.asp" method="PUT">
姓名: <input type="text" name="name" /><br />
年龄: <input type="text" name="arguments" /><br />
<input type="submit" value="Submit" />
</form>

  用一下w3c的测试接口,服务器端没有限制请求类型

  2.accept-charset 规定服务器处理表单数据所接受的字符集

  accept-charset: 字符集名称

  accept-charset:unknown (默认值) 表示表单的字符集与包含表单的文档的字符集相同。

  应避免使用该属性,应该在服务器端验证文件上传。
   3.autocomplete 提示功能,根据填写历史显示提示下拉列表
   autocomplete:on/off (开启/关闭)
  需要拥有autocomplete属性的表单标签才可以使用:input 
 
  4.enctype 规定表单数据在发送到服务器之前如何进行编码  
  可以填3个属性值:
  application/x-www-form-urlencoded:在发送前编码所有字符(默认),会将数据以name = value这种形式的键值对进行编码,
空格转换为 "+" 加号,特殊符号转换为 ASCII HEX 值
  multipart/form-data:不对字符进行编码,在使用表单上传的文件时必须使用。
  text/plain:空格转换为“+”加号,但不对特殊字符进行编码
  5.target 规定在哪打开 action URL
  可以填5个属性:
  _blank:在新窗口中打开
  _self:在当前窗口中打开        
  _parent:在上一级窗口中打开
  _top:在顶层窗口中打开
  framename:指定窗口
  6.name 规定表单的名称
  7.novalidate 可以阻止浏览器对表单的默认验证(填上这个属性)
 
示例:
<form   action="https://www.w3school.com.cn/example/html5/demo_form.asp" method="POST"
accept-charset="UTF-8" autocomplete="on" enctype="application/x-www-form-urlencoded"
name="myForm" novalidate target="_blank">
姓名: <input type="text" name="name" /><br/>
年龄: <input type="text" name="arguments" /><br/>
<select name="" id="">
<option value="">123</option>
<option value="">1231</option>
<option value="">123211</option>
<option value="">12312312</option>
</select>
<input type="submit" value="Submit" />
</form>

以上就是form标签的属性内容介绍,如果对内容有疑问欢迎来评论区进行交流讨论

  
 
 
 
 
 
 
 
 

Html form表单大全(一)的更多相关文章

  1. django之form表单验证

    django中的Form一般有两种功能: 输入html 验证用户输入 #!/usr/bin/env python # -*- coding:utf- -*- import re from django ...

  2. js验证表单大全

    js验证表单大全 1. 长度限制 <script> function test() { if(document.a.b.value.length>50) { alert(" ...

  3. form表单验证-Javascript

    Form表单验证: js基础考试内容,form表单验证,正则表达式,blur事件,自动获取数组,以及css布局样式,动态清除等.完整代码如下: <!DOCTYPE html PUBLIC &qu ...

  4. Form 表单提交参数

    今天因为要额外提交参数数组性的参数给form传到后台而苦恼了半天,结果发现,只需要在form表单对应的字段html空间中定义name = 后台参数名 的属性就ok了. 后台本来是只有模型参数的,但是后 ...

  5. form表单 ----在路上(15)

    form 表单就是将用户的信息提交到服务器,服务器会将信息存储活着根据信息查询数据进行增删改查,再将其返回给用户. 基本格式: <form action="" method ...

  6. form表单的字符串进行utf-8编码

    <form>表单有assept-charset属性.该属性规定字符的编码方式,默认是"unknown",与文档的字符集相同. 该属性除了Internet explore ...

  7. 细说 Form (表单)

    细说 Form (表单) Form(表单)对于每个WEB开发人员来说,应该是再熟悉不过的东西了,可它却是页面与WEB服务器交互过程中最重要的信息来源. 虽然Asp.net WebForms框架为了帮助 ...

  8. 通过form表单的形式下载文件。

    在项目中遇到问题,要求动态拼接uri下载文件.但是由于项目的安全拦截导致window.location.href 和 window.open等新建窗口的方法都不行. 无意间百度到了通过form表单来下 ...

  9. form 表单跨域提交

    <!DOCTYPE html><html> <head> <title>form 表单上传文件</title> <script src ...

随机推荐

  1. 【大数据】安装关系型数据库MySQL 安装大数据处理框架Hadoop

    作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3161 1.安装Mysql 使用命令  sudo apt-get ins ...

  2. C# 最简单的使程序单进程运行的方法

    1.代码1 static void Main() { Process current = Process.GetCurrentProcess(); Process[] processes = Proc ...

  3. Linux Shell 之 对文件中的行、单词、字符进行迭代

    在进行文本文件进行处理时,对文件件中的行.单词.字符进行迭代和遍历是非常常用的操作.而将一个简单的循环用于迭代,再加上来自stdin或文件的重定向,这就是对文件中的行.单词.和字符进行迭代的基本方法. ...

  4. /etc/bashrc

    [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\[\e[34;1m\]\u@\[\e[0m\]\[\e[3 ...

  5. 文件数据库sqlite3 C++ 线程安全和并发

    转载:https://www.cnblogs.com/feng9exe/p/10682567.html(线程安全和并发) 转载:https://juejin.im/post/5b7d8522e51d4 ...

  6. 带空格的 jquery ID 选择器

    当 DOM ID有一个空格时,如何使用 jquery 的 ID 选择器? 例如,我的 DOM ID 是 <div id="content Module">Stuff&l ...

  7. DispatcherServlet 被加载顺序

    javax.servlet.Servlet#init 0 -> javax.servlet.GenericServlet#init(javax.servlet.ServletConfig) 1 ...

  8. 使用adb命令控制anroid手机

     adb工具即Android Debug Bridge(安卓调试桥) tools.它就是一个命令行窗口,用于通过电脑端与模拟器或者真实设备交互.在某些特殊的情况下进入不了系统或者需要自动化测试的时候, ...

  9. 当代码上传git时,提示Repository not found The requested repository does not exist, or you do not have permission to access it. fatal: Could not read from remote repository. Please make sure you have the corre

    1.检查当前git中设置的用户名与邮箱是否与自己电脑上的一致. 看这个文件中 如果不一致,只需要把里面的内容全部复制出来添加到git(看下图位置) 这是再执行:git push -u origin m ...

  10. python:单元测试框架pytest的一个简单例子

    之前一般做自动化测试用的是unitest框架,发现pytest同样不错,写一个例子感受一下 test_sample.py import cx_Oracle import config from sen ...