form.on('submit(*)', function(data) { data = data.field; // 数据校验 if(!isIntNumer(data.canhuirenshu)){ layer.msg('参会人数应输入整数', { time: 2000, icon: 5 }); return false } // 跨表计算判断 // 比较大小 //更新跨表属性 var crossuserid; var crossrefid; var crossoptnum; if(http.getParam('corss')){ var statusColumnName = localStorage.getItem('statusColumnName'); var statusColumnValue = localStorage.getItem('statusColumnValue'); if(statusColumnName!='') { var obj = JSON.parse(localStorage.getItem('crossObj')); if(!statusColumnName.startsWith("[")) { for (var o in obj){ if(o==statusColumnName){ obj[o] = statusColumnValue; } } var table = localStorage.getItem('crossTable'); http.requestJson(`${table}/update`,'post',obj,(res)=>{}); } else { crossuserid=Number(localStorage.getItem('userid')); crossrefid=obj['id']; crossoptnum=localStorage.getItem('statusColumnName'); crossoptnum=crossoptnum.replace(/\[/,"").replace(/\]/,""); } } } if(crossrefid && crossuserid) { data.crossuserid=crossuserid; data.crossrefid=crossrefid; http.request('huiyishiyuyue/list', 'get', { page: 1, limit: 10, crossuserid:crossuserid, crossrefid:crossrefid, }, function(res) { if(res.data.total>=crossoptnum) { layer.msg(localStorage.getItem('tips'), { time: 2000, icon: 6 }) return false; } else { // 跨表计算 // 提交数据 http.requestJson('huiyishiyuyue' + '/add', 'post', data, function(res) { layer.msg('提交成功', { time: 2000, icon: 6 }, function() { back(); }); }); } }); } else { // 跨表计算 // 提交数据 http.requestJson('huiyishiyuyue' + '/add', 'post', data, function(res) { layer.msg('提交成功', { time: 2000, icon: 6 }, function() { back(); }); }); } return false

时间: 2024-01-10 15:02:19 浏览: 24
这段代码是一个表单提交的事件回调函数。首先获取表单数据,然后对参会人数进行整数校验,如果不是整数则弹出提示框并返回 false,阻止表单提交。接着,判断是否需要进行跨表计算,如果需要则获取跨表属性的信息,并根据条件查询数据库进行比较。如果查询结果超过条件限制,则弹出提示框并返回 false,阻止表单提交。否则,进行跨表计算并提交表单数据,并弹出提示框提示提交成功,并调用 back 函数进行页面跳转。如果不需要进行跨表计算,则直接提交表单数据,并弹出提示框提示提交成功,并调用 back 函数进行页面跳转。最后,返回 false 阻止表单提交。
相关问题

form.on('submit(*)', function(data) { data = data.field; // 数据校验 if(!isIntNumer(data.canhuirenshu)){ layer.msg('参会人数应输入整数', { time: 2000, icon: 5 }); return false }

这段代码中,form.on('submit(*)', function(data) { ... }是用于监听表单提交事件的,其中的*是指表单的lay-filter属性值,可以根据需要进行修改。当表单提交时,执行函数体内的代码逻辑。 代码中首先通过data.field获取表单提交的数据,然后进行数据校验,确保参会人数为整数。如果参会人数不是整数,就会弹出提示框,并返回false,阻止表单提交。

form.on('submit(pattern-add-form-submit)', function (data) { console.log("data:" + data.field) if (data.field.title === '') { febs.alert.warn("标题不能为空q"); } else if (data.field.price === null) { febs.alert.warn("价格不能为空") } else { febs.post(ctx + 'pattern/add', data.field, function () { layer.closeAll(); febs.alert.success('新增成功'); $('#febs-pattern').find('#query').click(); }); } return false; });我想校验非空字段,第一次标题为空提交正常提示,然后标题输入值后点击提交没反应

根据您提供的代码,可能是因为您的表单提交是通过 Ajax 来实现的,而在第一次提交时,您已经通过 `return false` 阻止了默认的表单提交行为,从而导致了表单的重置。因此,后续的提交并没有触发表单的提交事件。 为了解决这个问题,您可以在表单验证通过后,手动触发表单的提交事件,而不是使用 `return false` 来阻止默认行为。修改后的代码如下: ```javascript form.on('submit(pattern-add-form-submit)', function (data) { console.log("data:" + data.field); if (data.field.title === '') { febs.alert.warn("标题不能为空q"); } else if (data.field.price === null) { febs.alert.warn("价格不能为空"); } else { febs.post(ctx + 'pattern/add', data.field, function () { // 清除表单数据 form[0].reset(); layer.closeAll(); febs.alert.success('新增成功'); $('#febs-pattern').find('#query').click(); }); // 手动触发表单提交事件 form.trigger('submit'); } // 返回 false 防止事件冒泡 return false; }); ``` 这样,当表单验证通过后,会先提交表单数据,然后手动触发表单的提交事件,最终实现表单的提交。 另外,如果您使用的是 layui 框架,也可以使用 `form.render()` 方法来重新渲染表单。例如: ```javascript form.render(); ``` 这样可以重新渲染表单,从而避免表单重置。

相关推荐

rar

最新推荐

recommend-type

基于form-data请求格式详解

最近一直都比较忙,坚持月月更新博客的计划不得中止了,今天抽出点时间来说说最近项目中遇到的一个问题,有关request post请求格式中的multipart/form-data格式。 引言 最近在参与一个项目过程中遇到一个问题,相信...
recommend-type

Servlet获取AJAX POST请求中参数以form data和request payload形式传输的方法

主要介绍了Servlet获取AJAX POST请求中参数以form data和request payload形式传输的方法,结合实例形式详细分析了post数据发送及获取请求数据的原理与相关操作注意事项,需要的朋友可以参考下
recommend-type

form.submit()不能提交表单的原因分析

主要分析了form.submit()不能提交表单的原因,需要的朋友可以参考下
recommend-type

form.submit()不能提交表单的错误原因及解决方法

button的id不要设置为submit,否则可能会引起混淆,导致表单的submit()方法不能提交表单
recommend-type

PHP实现支持GET,POST,Multipart/form-data的HTTP请求类

主要介绍了PHP实现支持GET,POST,Multipart/form-data的HTTP请求类,包括了连接与处理方式及相关的技巧,需要的朋友可以参考下
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

【实战演练】MATLAB用遗传算法改进粒子群GA-PSO算法

![MATLAB智能算法合集](https://static.fuxi.netease.com/fuxi-official/web/20221101/83f465753fd49c41536a5640367d4340.jpg) # 2.1 遗传算法的原理和实现 遗传算法(GA)是一种受生物进化过程启发的优化算法。它通过模拟自然选择和遗传机制来搜索最优解。 **2.1.1 遗传算法的编码和解码** 编码是将问题空间中的解表示为二进制字符串或其他数据结构的过程。解码是将编码的解转换为问题空间中的实际解的过程。常见的编码方法包括二进制编码、实数编码和树形编码。 **2.1.2 遗传算法的交叉和
recommend-type

openstack的20种接口有哪些

以下是OpenStack的20种API接口: 1. Identity (Keystone) API 2. Compute (Nova) API 3. Networking (Neutron) API 4. Block Storage (Cinder) API 5. Object Storage (Swift) API 6. Image (Glance) API 7. Telemetry (Ceilometer) API 8. Orchestration (Heat) API 9. Database (Trove) API 10. Bare Metal (Ironic) API 11. DNS
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。