zoukankan      html  css  js  c++  java
  • form下button按钮的onclick事件

    1.问题:

    点击form下按钮, 异步提交获取数据填充给定id节点内容, 发现按钮使用button标签时, 页面内容变成刚刚加载的内容了。

    所以,

       跑去测试下input:button, input:submit(默认会去执行form的submit事件, 除非设顶返回值为false),

       button的onclick和form的onsubmit事件的执行过程.

    2.发现:

    button的onclick事件如果未返回false, 在firefox和chrome事件会继续, 去执行form的submit, 从而导致页面整个转向.

    //=======================================================

    html:

    <form action="#/" onsubmit="selfSubmit();" method="post">
        <input type="button" value="input按钮+手动提交form"
            onclick="btnSubmitForm(this);this.form.submit();"/>
        <input type="button" value="input按钮"
            onclick="btnSubmitForm(this);"/>
        <button  onclick="btnSubmitForm(this);">
            button按钮
        </button>
        <button  onclick="btnSubmitForm(this);return false;">
            button按钮2+return false
        </button>
    </form>

    js:

    function selfSubmit () {
        console.log('@selfSubmit');
    }
    function btnSubmitForm(o) {
        console.log('@btnSubmitForm');
        console.log(o);
        // return false; // 无效
    }

    采用方式:

    <button  onclick="btnSubmitForm(this);return false;">
            button按钮2+return false
    </button>

    4.在线: http://zhwq.github.com/zhng/test/base/form/input_button_event.html

    5.测试结论:

      ie下button的事件和input:button一样

      firefox, chrome上button默认会触发form的提交

  • 相关阅读:
    opencv4显示与保存图片
    opencv播放视频
    opencv4.1.0环境配置
    lambda表达式
    基于范围的for循环
    可调用对象包装器std::function
    C++11的类型推导
    Datagridview 实现二维表头
    Linux内存相关sysfs、工具
    关于net core 站点通过iis部署,跨域配置遇到的问题
  • 原文地址:https://www.cnblogs.com/zhng/p/2846641.html
Copyright © 2011-2022 走看看