当前位置:网站首页>十二、form表单的提交
十二、form表单的提交
2022-08-02 22:51:00 【Ming-Afresh】
信息填报类项目form表单必不可少
这里我们主要用到两种方式
<form @submit="onSubmit">
<view class="uni-form-item">...</view>
<view class="uni-form-item">...</view>
<button form-type="submit">保存</button>
<view class="uni-form-item">...</view>
<view class="uni-form-item">...</view>
<button @click="onClick">保存</button>
如果两种都加 那是不是同时触发呢?当然不是
@submit和@click也是区分优先级的 如上方法名称举例
onSubmit只能表单上使用,提交表单前会触发,onClick是按钮等控件来使用,用来触发点击事件。在提交表单前,一般都会进行数据验证,可以选择在submit按钮上的onClick中验证,也可以在onSubmit中验证。但是onClick比onSubmit更早的被触发
提交过程
1、用户点击按钮
2、触发onClick事件
3、onClick返回true或未处理onClick
4、触发onSubmit事件
5、onSubmit未处理或返回true
6、提交表单 onSubmit处理函数返回false,onClick函数返回false,都不会引起表单提交
尽可能的只用一种提交方法 写得花里胡哨作用都一样 两种还占用运行没必要
<template>
<view class="content">
<form @submit="onSubmit">
<view class="uni-form-item">
<view class="title">天音波</view>
<view class="input_box"><input type="text" placeholder="请输入" v-model="form.name" maxlength='30' />
</view>
<view class="uni-form-item">
<view class="title">金钟罩</view>
<view class="input_box"><input type="text" placeholder="请输入" v-model="form.name" maxlength='30' />
</view>
<view class="uni-form-item">
<view class="title">神龙摆尾</view>
<view class="input_box"><input type="text" placeholder="请输入" v-model="form.name" maxlength='30' />
</view>
<view>
<button form-type="submit" class="sub_btn clo" :disabled="btnDisabled">保存</button>
</view>
</form>
</view>
</template>
<script>
export default {
data() {
return {
form: {
name: '',
},
btnDisabled:false,
}
},
onLoad() {
},
methods: {
onSubmit(e){
var _this =this;
if(_this.btnDisabled){
uni.showToast({
icon:'none',
title:'请勿重复提交'
})
}
if(_this.form.name==''){
uni.showToast({
icon:'none',
title:'请选择姓名'
})
return false
}
_this.btnDisabled=true
uni.request({
url: 'Where You Going, Baby?',
method: 'POST',
data: {
name:_this.form.name,
...
},
header: {
'content-type': 'application/json'
},
success: res => {
console.log(res.data);
if(res.data==1){
uni.showToast({
icon:'none',
title:'上报成功',
})
setTimeout(()=>{
uni.navigateBack({
delta:0
})
},1000)
};
},
fail: (err) => {
uni.showToast({
icon:'none',
title:err.data.msg,
})
},
});
},
}
}
</script>
边栏推荐
- qt静态编译出现Project ERROR: Library ‘odbc‘ is not defined
- 微信小程序实现lot开发09 接入微信登录
- threejs 动态调整相机位置,使相机正好能看到对象
- 【斯坦福计网CS144项目】Lab5: NetworkInterface
- resubmit 渐进式防重复提交框架简介
- 2022暑假牛客多校1 (A/G/D/I)
- [论文总结] 深度学习在农业领域应用论文笔记10
- Connect the Snowflake of CKAN tutorial CKAN to release to open data portal
- Pytest配置项-pytest.ini
- mysql根据多字段分组——group by带两个或多个参数
猜你喜欢
随机推荐
数据库主键一定要自增吗?有哪些场景不建议自增?
最新真实软件测试面试题分享,收藏了还怕进入不了大厂?
markdown语法
js基础知识整理之 —— Math
Speech Synthesis Model Cheat Sheet (1)
Yocto系列讲解[实战篇]85 - 制作ubi镜像和自动挂载ubifs文件系统
基于奇异谱分析法和长短时记忆网络组合模型的滑坡位移预测
精心整理16条MySQL使用规范,减少80%问题,推荐分享给团队
雷克萨斯lm的安全性如何?
VMware workstation program starts slowly
qt静态编译出现Project ERROR: Library ‘odbc‘ is not defined
虚拟内存 virualmemory
用了 TCP 协议,数据一定不会丢吗?
NLP常用Backbone模型小抄(1)
js基础知识整理之 —— 闭包
基于飞腾平台的嵌入式解决方案案例集 1.0 正式发布!
最近公共祖先(LCA)学习笔记 | P3379 【模板】最近公共祖先(LCA)题解
聚乙二醇衍生物4-Arm PEG-DSPE,四臂-聚乙二醇-磷脂
js基础知识整理之 —— 全局作用域
我们来浅谈代码语言的魅力