AnjularJS表单回车提交事件
问题:

输入手机号之后,再验证码输入框点击回车时,触发发送验证码事件。
<div class="login-main">
<form name="loginMobileForm" class="" novalidate>
<div class="form-group">
<label class="col-sm-2 control-label login-label">手机号</label>
<div class="col-sm-10">
<input class="form-control login-input" placeholder="请输入手机号" name="mobile" ng-model="login.mobile" ng-pattern="/^1[34578]\d{9}$/"
required>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label login-label">验证码</label>
<div class="col-sm-10">
<div class="col-sm-8">
<input class="form-control login-input ml-15" placeholder="请输入4位验证码" name="validCode"
ng-model="login.validCode" ng-minlength="4" ng-maxlength="4" required>
</div>
<div class="col-sm-2">
<button class="btn btn-primary ml-15" ng-click="sendSmsCode()" ng-hide="timeButtonDisabled" ng-disabled="loginMobileForm.mobile.$invalid">发送验证码</button>
<button class="btn btn-primary ml-15" ng-disabled="true" ng-hide="!timeButtonDisabled">{{text}}</button>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<div class="col-sm-8">
<p class="text-left text-danger ng-hide" ng-show="loginError" ng-bind="loginMsg"></p>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" ng-click="submitMobileLoginForm()" class="btn btn-primary" ng-disabled="loginMobileForm.$invalid"
ng-bind="btnLoading">LOGN
</button>
<!--<button class="btn btn-primary" ng-click="loginTypeToggle()" >用户名登陆</button>-->
</div>
</div>
</form>
</div> 解决办法:
button默认的type是submit,点回车就触发了提交,下面两个button加上类型 type="button"就可以了
<button class="btn btn-primary ml-15" ng-click="sendSmsCode()" ng-hide="timeButtonDisabled" ng-disabled="loginMobileForm.mobile.$invalid">发送验证码</button>
<button class="btn btn-primary ml-15" ng-disabled="true" ng-hide="!timeButtonDisabled">{{text}}</button>。 表单的提交行为,可以用两种方式定义,一是form表单自身,二是form表单的button元素(包括type='submit'的input标签,以及type='submit'的button元素,button默认type为submit),
而按enter键会触发form表单提交,这称为隐式提交。这是为了让那些使用辅助阅读工具使用者(比如屏幕阅读器)或不方便使用鼠标者所设立的。
当用户在一个表单的input标签按enter按钮时,浏览器会找到表单中的第一个提交按钮(submit button),并触发click,同时提交表单。
如果一个表单里没有任何submit button。当这个表单只有一个input元素时,在这个input标签按enter键会隐式触发表单提交,
但表单有多个input标签时就不会触发。 更多信息查阅-form表单
AnjularJS表单回车提交事件的更多相关文章
- 使用 elementUI 的表单进行查询,表单中只有一个文本框时,回车会自动触发表单的提交事件,导致页面的刷新。
使用elementUI的el-form组件进行查询时,当输入框仅有一项时,回车自动提交表单,浏览器会刷新页面: 原因:由于当表单只有一个文本框时,按下回车将会触发表单的提交事件, 从而导致页面刷新. ...
- form表单回车提交问题,JS监听回车事件
我们有时候希望回车键敲在文本框(input element)里来提交表单(form),但有时候又不希望如此.比如搜索行为,希望输入完关键词之后直接按回车键立即提交表单,而有些复杂表单,可能要避免回车键 ...
- form表单回车提交
当form中只有一个input[type="text"](其他的表单元素可以随意有)的输入框时候,当input[type="text"]获得焦点的时候,无论表单 ...
- Form表单(回车)提交问题
我们有时候希望回车键敲在文本框(input element)里来提交表单(form),但有时候又不希望如此.比如搜索行为,希望输入完关键词之后直接按回车键立即提交表单,而有些复杂表单,可能要避免回车键 ...
- 表单验证提交——submit与button
之前做东西接触过表单验证提交,但是都是为了完成工作,做完就做完了,没有注过表单验证提交有几种方法,各方法都有啥区别.今天瞎折腾了一下,对他们研究了一下,如下是我个人的理解: submit: 从字面上看 ...
- 使用ajax方法实现form表单的提交(附源码)
写在前面的话 在使用form表单的时候,一旦点击提交触发submit事件,一般会使得页面跳转,页面间的跳转等行为的控制权往往在后端,后端会控制页面的跳转及数据传递,但是在某些时候不希望页面跳转,或者说 ...
- 使用ajax方法实现form表单的提交
作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载. 写在前面的话 在使用form表单的时候,一旦点击提交触发submit ...
- 关于form表单回车自动刷新
现象: form表单,输入框聚焦后,回车,页面刷新跳转. 原因: form表单,在只有一个输入框的时候,在点击回车时,就会触发表单的提交,而form若没有url,则提交后就会刷新页面,导致跳转. 解决 ...
- 使用jQuery.form插件,实现完美的表单异步提交
传送门:异步编程系列目录…… 时间真快,转眼一个月快结束了,一个月没写博客了!手开始生了,怎么开始呢…… 示例下载:使用jQuery.form插件,实现完美的表单异步提交.rar 月份的尾巴,今天的主 ...
随机推荐
- jQuery中的extend()方法
通常我们使用jquery的extend时,大都是为了实现默认字段的覆盖,即若传入某个字段的值,则使用传入值,否则使用默认值.如下面的代码: function getOpt(option){ var _ ...
- OSGi HelloWorld
1.创建项目 2.Debug Configurations,配好之后,可以点一下右下角的Validate Bundles验证一下是否有问题 3.Debug
- python基础——字符串、编码、格式化
1.三种编码:ascii Unicode utf8 2.字符串和编码数字的两个函数:ord(字符转数字ord(‘A’)=65)和 chr(数字转字符chr(65)=A) 3.bytes存储编码,记住两 ...
- 如何删除github里面的项目
第一步 :首先登陆github 第二步:如下图选择 第三步:选择如下图 第四步:点击你要删除的项目,点击settings 第五步:把页面向下拉,找到如图按钮并点击 第六步:需要确认输入你要删除的项目名 ...
- 035 控制并发 select * from test1 where id =1 for update 就会对这行加锁了?
今天在看同事程序的时候,看到这种用法,顺便学习下. 一:理论 1.功能 这个功能是上锁. 上的是一个排它锁,也就是说,其他的事务是可以读取的.但是不能写入或者更新. 二:实践 1.创建表 2.提交一条 ...
- Python replace() 和 re.sub() 字符串字符替换
Python replace() 和 re.sub() 字符串字符替换 replace() testStr = 'aa:bb[cc' testStr.replace(':','_') 每次只能替换一个 ...
- 爬虫1 socket方式下载一张图片
import socket import re client = socket.socket() # 图片url img_url = 'https://img03.sogoucdn.com/app/a ...
- TF:利用TF的train.Saver载入曾经训练好的variables(W、b)以供预测新的数据—Jason niu
import tensorflow as tf import numpy as np W = tf.Variable(np.arange(6).reshape((2, 3)), dtype=tf.fl ...
- Gym 102091L Largest Allowed Area 【二分+二维前缀和】
<题目链接> 题目大意:给你一个由01组成的矩形,现在问你,该矩形中,最多只含一个1的正方形的边长最长是多少. 解题分析: 用二维前缀和维护一下矩形的01值,便于后面直接$O(1)$查询任 ...
- unity3d俄罗斯方块源码教程+源码和程序下载
小时候,大家都应玩过或听说过<俄罗斯方块>,它是红白机,掌机等一些电子设备中最常见的一款游戏.而随着时代的发展,信息的进步,游戏画面从简单的黑白方块到彩色方块,游戏的玩法机制从最简单的消方 ...