常用出现场景:商城点击订单提交
1、使用Vue封装事件
body:
<template> <div> <el-button @click.once="submitOrder()">提交订单</el-button> </div> </template>
方法:
methods: { submitOrder() { // 处理逻辑 } }
2、使用原生JS事件
在数据data里面声明一个flag属性
data() { return { isSubmit: true; } }
body:
<template> <div> <el-button @click="submitOrder()">提交订单</el-button> </div> </template>
方法:
methods: { submitOrder() { if (this.isSubmit) { this.isSubmit = false; // 处理逻辑 } } }
补充知识:表单验证提交内容不能为空的几种方法
方法一:
使用css的required属性
<input type="" required="required" name="" id="" value="" />
方法二:
使用JS代码示例,注意事项:form要加上onSubmit事件,form.xx.vlaue要在表单中对应name
<script type="text/javascript"> function beforeSubmit(form){ if(form.username.value==''){ alert('用户名不能为空!'); form.username.focus(); return false; } if(form.password.value==''){ alert('密码不能为空!'); form.password.focus(); return false; } if(form.password.value.length<6){ alert('密码至少为6位,请重新输入!'); form.password.focus(); return false; } if(form.password.value!=form.password2.value) { alert('你两次输入的密码不一致,请重新输入!'); form.password2.focus(); return false; } return true; } </script> <fieldset> <legend>用户注册</legend> <form method="post" name="form" action="user.do" onSubmit="return beforeSubmit(this);"> <table border="1" width="100%" cellspacing="0" cellpadding="0"> <tr><td><label>用户名:<input type="text" name="username" value=""></label></td></tr> <tr><td><label>密 码:<input type="password" name="password" value=""></label></td></tr> <tr><td><label>重复密码:<input type="password" name="password2" value=""></label></td></tr> <tr><td><input value="注册" type="submit"> <input type="reset" value="重置"></td></tr> </table> </form> </fieldset>
方法三:
使用jQuery方法(通过class验证),需要引用jquery.min.js
优势:
1:为input添加class,名字可以随意设置,但每个input需要保持一致,本章案例calss设置为noNull。(若input已有class属性,可直接加到其后)
2:为input添加一个属性,用来后期通过jquery获取该字段,用作提示语。本章案例提示属性为notNull。
3:通过jQuery遍历页面中所有calss为noNull的表单,验证其是否为空,若为空,通过获取notNull的字段,进行为空提示。
具体如何设置,请参照下面的案例。
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> </head> <body> <form> <!-- input --> <div> 姓名: <input type="text" name="name" notNull="姓名" class="form-control noNull"> </div> <br> <!-- radio --> <div> 性别: 男<input type="radio" name="sex" value="0" class="noNull" notNull="性别"> 女<input type="radio" name="sex" value="1" > </div> <br> <!-- select --> <div> 年龄: <select name="age" class="noNull" notNull="年龄"> <option value ="">请选择</option> <option value ="1">1</option> <option value ="2">2</option> </select> </div> <br> <!-- checkbox --> <div> 兴趣: 打球<input type="checkbox" name="hobby" value="1" class="noNull" notNull="兴趣"> 唱歌<input type="checkbox" name="hobby" value="2"> 跳舞<input type="checkbox" name="hobby" value="3"> </div> <br> <button type="button" class="btn-c" onclick="bubmi()">保存</button> </form> <script src="/UploadFiles/2021-04-02/jquery-1.9.1.min.js">以上这篇Vue表单提交点击事件只允许点击一次的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。