• form 表单<input type="button" value="登录" onclick="loginSubmit ()"/> 点击提示 Uncaught TypeError: loginSubmit is not a function


    在网上搜了一堆东东,仔细看了一下,再加上实验,发现原因出在<form>中。

    <form method="post">
    <button type="button" class="signin" id="loginNewSubmit" onClick="javascript:loginSubmit('new');">登录</button>
    

      form 中使用 button 会默认提交表单,导致两种情况:一是重复提交数据。button 写法 type=“submit”。一种就是onclick方法失效。

    建议的写法 <input type="button" onclick="login();"> 、<div class="button" >(js 绑定click事件)

    根据个人的实际情形来组合使用 form 和 button、input type="button" 吧。注意的是: 提交表单<input type="button" value="登录" onclick="login()"/> 和<button onclick="login()">登录</button>区别 

    html按钮有两种:

    <input type="button" value="登录" onclick="login()"/>

    和<button onclick="login()">登录</button>

    这两种在页面上看起来好像一样没什么区别,但是这两种是有区别的。

    1,如果在<form id="loginForm" name="loginForm" action="<%=path%>/hdlogin/login.action" method="post"></form>

    标签中,使用<input type="button" value="登录" onclick="login()"/>,要想提交form,

    你必须写成<input type="submit" value="登录" onclick="login()"/>,

    或者document.loginForm.submit();否则form是不会提交的。

    2,如果在form中使用<button onclick="login()">登录</button>只要点击就会提交。

    <button onclick="login()">登录</button>相当于<input type="submit" value="登录" onclick="login()"/>。

    今天在使用<button></button>时,我又在js控制表单提交,结果这个action总是莫名其妙的走两次!

    根源就是表单提交了两次,一次是<button></button>,一次是document.loginForm.submit();

    这个错误很隐蔽,大家以后要注意。

  • 相关阅读:
    数据库表分区
    将对象序列化成XML字符串
    [邀月博客] SQL Server 2008中SQL增强之二:Top新用途
    多线程:子线程执行过程中调用主线程
    Jquery版文字闪烁
    金马自定义对联
    清除数据
    QQ、微信、QQ浏览器UserAgent
    jump.html域名跳转javascript版
    注册页面位置调整
  • 原文地址:https://www.cnblogs.com/yeyuchangfeng/p/6022728.html
Copyright © 2020-2023  润新知