Layui表单自定义验证结合Ajax同步请求的实现方案

作者:桌面漫游

时间:2026-10-23

浏览:577

本文介绍Layui表单中使用form.verify进行自定义验证时,通过Ajax查询后台重复数据的常见陷阱。重点解决异步请求导致验证结果返回延迟或丢失的问题,通过将Ajax设置为同步模式并在请求结束后直接return提示信息,确保验证流程正确执行。

文章目录

Layui表单验证与Ajax结合的问题

在使用Layui表单进行自定义验证,并通过Ajax查询后台数据时,将form.verify与Ajax结合使用可能会遇到一些异常现象。

首先,可能会出现需要点击两次提交按钮才能看到验证结果的情况。

其次,有时后台返回的数据正常,但前端并未显示验证提示。经过排查发现,问题出在Ajax请求的异步特性上。正确的做法是将Ajax请求改为同步模式,并在Ajax请求结束后直接return验证提示信息,而不是在success或error回调函数中return。

form.verify同步验证实现代码


form.verify({
  account: function(value, item){ //value:表单的值、item:表单的DOM对象
  if(value.trim() == ""){
   return '账号不能为空';
  }
  var param = {
 employeeId: $("#hidEmployeeId").val(),
 employeeAccount: $("#employeeAccount").val()
 }
 var checkResult = "";
 
 $.ajax({
 url: "../../selectEmpIdByAccount",
 type: "GET",
 data: param,
 async: false,
 success: function(result) {
  if(result.extend.isRepeat){
   checkResult = "该账号已存在";
  }
 },
 error: function() {
 }
 });
 return checkResult;
  }
 });

以上关于Layui自定义验证结合Ajax查询后台重复数据的示例分享完毕,希望能为读者提供参考。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章