method属性:
规定用于发送 form-data 的 HTTP 方法。
可选值有get与post。默认情况下method的值为get。
get适合用来提交少量的,简单的数据。
post适合用来提交大量的,复杂的或包含文件上传的数据。
实际开发中很少使用get方式,而post方式用的最多,登录、注册、添加数据等操作都要用到post。
enctype属性:
规定在发送表单数据之前如何对其进行编码。
它的可选值有三个:
- application/x-www-form-urlencoded 表示在发送数据前编码所有的字符
- multipart/form-data 不对字符编码,在使用包含文件上传控件的表单时,必须使用该值。
- text/plain 空格转换为 '+' 但不对特殊字符进行编码。
默认情况下,即写了enctype没有说明取那个时,值为application/x-www-form-urlencoded
所以在涉及文件上传的操作时,我们将---他的值设置为multipart/form-data 其余情况下设置为默认的值即可。或者不为form表单设置enctype属性。
表单同步提交的缺点:
form表单同步提交后,整个页面会发生跳转,跳转到action url所指向的地址,用户体验很差。
form表单同步提交后,页面之前的状态和数据会丢失。
如何解决这个问题:
表单只负责收集数据,提交数据交给ajax。