zoukankan      html  css  js  c++  java
  • button和submit的区别

    button-普通按钮,submit-提交按钮。
    submit是button的一个特例,也是button的一种,它把提交这个动作自动集成了,submit和button,二者都以按钮的形式展现,看起来都是按钮,所不同的是type属性和处发响应的事件上。

    使用场景:

    这里说的部分使用场景,并不是只能用一种,只是说,在这种场景下使用更加方便,程序员工作量小。
    用表格对比一下:

    场景buttonsubmit
    网页上需要提交信息到服务器  
    网页上执行一个普通的事件,如重置、清空功能。  
    提交表单 需要绑定事件才能提交表单数据
    局部刷新 不可以使用,在触发事件的同时会提交表单。
    没有表单,却要提交数据 而button默认是不提交任何数据。可以绑定事件的方式来提交数据。 submit需要有表单时,提交时才会带数据。当然使用submit也可以,但是前提要拦截onclick事件。
    表单数据太多的时候 需要写很多数据的获取动作 推荐
    提交数据是要使用js进行校验的,但如果这时候用户禁用了js,那么校验就失效了,如果后台也没有进行校验,那么不合法的数据就进入后台了。 推荐:通过button提交数据,那么如果用户禁用JS,那么数据提交动作就激活不了 不推荐

    广州vi设计公司http://www.maiqicn.com 办公资源网站大全 https://www.wode007.com

    补充

    1、上面的场景中,表单在点击提交按钮后需要用JS进行处理(包括输入验证)后再提交的话,通常我们提倡用button,如果需要使用submit提交前验证的话 应在方法前加return。onClick方法不加return 会自动提交,并不会起到约束的作用, 所以,使用submit时需要验证请加 return true或false。
    如一个登陆模块,先验证用户名是否为空,如果为空,SUBMIT点击时永远提交不到from表单指定页面。只能是表单形式发送噢!而且不能再表单指定的页面中去验证传进来的值。

    function check(){
       var name = document.getElementById("name").value;
       if(name ==  null || name == ''){
            alert("用户名不能为空");   
            return false;
       }
       return true;
    }
    
    
    <form name="form" action="跳转的页面" method="post"  onsubmit="return check()">
      <input type="text" id="name"/>
      <input type="submit" value="提交"/>
     
  • 相关阅读:
    javascript使用jQuery加载CSV文件+ajax关闭异步
    流媒体服务器+EasyDarwin+EasyPusher+VLC+Red5+OBS+Unity+RTSP+RTMP+FFMPEG
    C#中的垃圾回收机制与delegate
    C#调用DLL报“试图加载格式不正确的程序”
    VS2017编译Poco1.9.0的64版本
    在线生成Cron表达式
    com.alibaba.fastjson.JSONException: For input string: "8200-12-31"
    spring定时任务
    org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection
    主键和索引
  • 原文地址:https://www.cnblogs.com/ypppt/p/13677537.html
Copyright © 2011-2022 走看看