button 和input 的区别及在表单form中的用法
先说一下button 和input的定义:
<button> 标签定义的是一个按钮
1、在 <button> 元素内部,您可以放置任何内容,比如文本或图像。这是该元素与使用 <input> 元素创建的按钮之间的不同之处;
2、 <button> 控件提供了更为强大的功能和更丰富的内容;
3、<button> 与 </button> 标签之间的所有内容都是按钮的内容,其中包括任何可接受的正文内容,比如文本或多媒体内容。
<input> 标签规定了用户可以在其中输入数据的输入字段
<input> 元素在 <form> 元素中使用,用来声明允许用户输入数据的 input 控件;input具体类型取决于type属性
接下来具体说明 四种按钮: <input type="submit"/>、<input type="button"/>、<button type="submit"></button>、<button type="button"></button>
一、<input type="submit"/>:当用户单击此按钮时,表单会按<form>标记的action属性设置的方式来发送表单内容。点击时,页面会刷新
<form action="#">
<input type="text" name="username"/><br/>
<input type="password" name="password"/><br/>
<input type="submit" value="登录"/>
</form>
要想在提交数据之前,先对表单数据进行检验:
<form action="#" onsubmit="return check()">
用户名:<input type="text" name="username"/><br/>
密码:<input type="password" name="password"/><br/>
<input type="submit" value="登录"/>
</form>
<script LANGUAGE="JavaScript">
function check(){
console.log("提交前先验证");
var checkElement=document.getElementsByTagName("input");
if(checkElement[0].value==="" || checkElement[1].value==="") {
return false;//当用户名或者密码为空时,返回false,此时表单不会提交
}
}
</script>
当check函数里返回false会阻止submit的默认行为,即阻止表单数据提交(阻止页面刷新)
注意:onsubmit="return check()" 中的 return 不能省略
二、<input type="button"/>普通按钮,必须搭配JS才有用,如onclick事件等
<form action="#" onsubmit="return check()">
用户名:<input type="text" name="username"/><br/>
密码:<input type="password" name="password"/><br/>
<input type="submit" value="登录"/>
<input type="button" value="提醒" onclick="remind()"/>
</form>
<script LANGUAGE="JavaScript">
function check(){
console.log("提交前先验证");
var checkElement=document.getElementsByTagName("input");
if(checkElement[0].value==="" || checkElement[1].value==="") {
return false;//当用户名或者密码为空时返回false,此时表单不会提交
}
}
function remind(){
alert("这是一个简单按钮,默认不会提交表单数据,不会刷新页面");
}
</script>
三、<button type="submit"></button>表单数据提交按钮,与<input type="submit"/>用法相同
<form action="#" onsubmit="return check()">
用户名:<input type="text" name="username"/><br/>
密码:<input type="password" name="password"/><br/>
<button type="submit">登录</button>
</form>
<script LANGUAGE="JavaScript">
function check(){
console.log("提交前先验证");
var checkElement=document.getElementsByTagName("input");
if(checkElement[0].value==="" || checkElement[1].value==="") {
return false;//当用户名或者密码为空时返回false,此时表单不会提交
}
}
</script>
四、<button type="button"></button>普通按钮,与<input type="button"/>的用法是一样的
<form action="#" onsubmit="return check()">
用户名:<input type="text" name="username"/><br/>
密码:<input type="password" name="password"/><br/>
<button type="submit">登录</button>
<button type="button"onclick="remind()">提醒</button>
</form>
<script LANGUAGE="JavaScript">
function check(){
console.log("提交前先验证");
var checkElement=document.getElementsByTagName("input");
if(checkElement[0].value==="" || checkElement[1].value==="") {
return false;//当用户名或者密码为空时返回false,此时表单不会提交
}
}
function remind(){
alert("这是一个简单按钮,默认不会提交表单数据,不会刷新页面");
}
</script>
注意一点:
当<button>未处于<form>表单中时,其浏览器默认的type就是button;
而当<button>处于<form>表单中时,不同的浏览器对 <button> 元素的 type 属性使用不同的默认值;
因此,建议时刻为button设置type值。
总结一下:
<button type="submit"></button> 和 <input type="submit"/>用法相同,用作表单数据提交按钮,默认即会刷新页面;
<button type="button"></button> 和 <input type="button"/>的用法是一样的,均为普通按钮,默认情况不会刷新页面。
button 和input 的区别及在表单form中的用法的更多相关文章
- HTML(七)HTML 表单(form元素介绍,input元素的常用type类型,input元素的常用属性)
前言 表单是网页与用户的交互工具,由一个<form>元素作为容器构成,封装其他任何数量的表单控件,还有其他任何<body>元素里可用的标签 表单能够包含<input> ...
- ThinkPHP数据库访问CRUD;__SELF__和__ACTION__的区别;自动收集表单:$n->create();
一.tp框架数据访问(pdo基础) public function test() { $n = D("Nation"); //select();find(); //查询 1.$at ...
- 数据库访问CRUD;__SELF__和__ACTION__的区别;自动收集表单:$n->create();
一.tp框架数据访问(pdo基础) public function test() { $n = D("Nation"); //select();find(); //查询 1.$at ...
- 表单提交中get和post方式的区别
表单提交中get和post方式的区别有5点 1.get是从服务器上获取数据,post是向服务器传送数据. 2.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一 ...
- 前端与后台可能需要使用交互的表单form,input标签
前端与后台可能需要使用交互的表单标签 form表单和input标签 textarea文本域表单 select,option下拉列表表单 fieldset和legend组合表单 label标签 form ...
- input type=file文件选择表单元素二三事
一.原生input上传与表单form元素 如果想使用浏览器原生特性实现文件上传(如图片)效果,父级的form元素有个东西不能丢,就是: enctype="multipart/form-dat ...
- 表单<form></form>提交方式的区别
<form action="" method="get/post"> 表单<form></form>的提交方式有两种:pos ...
- HTML ------ 关于表单 Form
Form(表单)主要用于采集和提交用户输入的信息,是页面与WEB服务器交互过程中 最重要的信息来源. 掌握表单(Form)有以下几个要点: 重要form属性 form常用控件 form提交方式 § 重 ...
- amazeui学习笔记--css(HTML元素3)--表单Form
amazeui学习笔记--css(HTML元素3)--表单Form 一.总结 1.form样式使用:在容器上添加 .am-form class,容器里的子元素才会应用 Amaze UI 定义的样式. ...
随机推荐
- 【学习笔记】Hibernate HQL连接查询和数据批处理 (Y2-1-7)
HQL连接查询 和SQL查询一样 hql也支持各种链接查询 如内连接 外连接 具体如下 左外连接 left (outer) join 迫切左外连接 left (outer) join fetch 右外 ...
- css实现多行多列的布局
1.两列多行: HTML: <div class="box1"> box1:实现两列多行布局 <ul> <li>111</li> & ...
- 编程中&和&&的区别
逻辑电路中用&: 与门电路,全真为真,有假为假. 编程中:&表示取地址符(C)和 按位与(非bool类型时,转换成二进制,按位与运算). &&表示逻辑与运算,& ...
- Docker容器技术
Docker介绍 什么是容器 Linux容器是与系统其他部分隔离开的一系列进程,从另一个系统镜像运行,并由该镜像提供支持进程所需的全部文件. 容器镜像包含了应用的所有依赖项,因而在从开发到测试再到生产 ...
- EmguCV创建/保存图片
Image图片类 public Image(Bitmap bmp);//采用 Bitmap 图像创建. public Image(string fileName);//指定路径创建图像. public ...
- ACM==迷茫
写给迷茫的自己~~ 从家里来学校一周多了,没做几个题,也没学习新的算法,就这样迷茫地无所事事.有时我就在想我是不是真的喜欢算法?曾经自己定下的竞赛目标要置之不理吗? 我高中毕业于一个普通高中,在上大学 ...
- Docker资源网站收藏
Docker资源 Docker官方英文资源: docker官网:http://www.docker.com Docker windows入门:https://docs.docker.com/windo ...
- Oracle 11g数据库安装和卸载教程
Oracle11g的安装教程 同时解压缩两个zip文件,生成一个database文件夹,进入到database文件夹,点击setup 去掉安全更新的选项,直接下一步 选择创建和配置数据库,点击下一步 ...
- Hadoop序列化与Java序列化
序列化就是把内存中的对象的状态信息转换成字节序列,以便于存储(持久化)和网络传输 反序列化就是就将收到的字节序列或者是硬盘的持久化数据,转换成内存中的对象. 1.JDK的序列化 只要实现了serial ...
- java:list排序
第一种方法:就是list中对象(bean文件)实现Comparable接口,代码如下: package com.mapred.entity; public class Bar implements C ...