用ajax校验表单并实现通过校验表单才提交的小功能

本文介绍如何使用ThinkPHP框架结合Ajax实现数据的实时校验功能,包括添加和修改页面的数据验证流程,并解决了未修改数据时触发Ajax等问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在学习PHP,用的是3.2版本的ThinkPHP框架最基本的增删改查弄完了之后想弄点有意思的,于是乎决定玩一下ajax校验,本以为很简单,真正做起来之后才发现遇到了各种各样的问题,分享一下
ajax校验最常见的一般是增加和修改页:

添加页

首先用ajax就要先有触发事件,一般是onchange事件或者onblur事件这里用的是onblur事件

然后在javascript里建立一个function:

控制层代码是这样的:

把ajax传过来的值放到数据库里查询,如果有结果就说明数据库里有这条数据就返回给html页面一个1,如果没有记录就返回给html页面一个0
html页面在ajax的成功回调函数里接到控制层传来的0或1然后做判断,如果是0就说明数据库里没数据,名称不重复,是1就说明名称重复,还有种情况就是用户直接不填,就在加一条判断条件
这样就完成了提示的功能,但是这样还不够,因为即使提示名称不满足条件该可以点提交
处理方法是引入一个全局变量

from表单有一个onsubmit事件,这个事件如果返回true就能提交,如果返回false就不能提交

建立一个panduan的方法

到了这步就完成了添加页面的检验功能

修改页

修改页和添加页有些区别,修改页一般是有回显功能的,如果用户不小心点击了修改页面又不想修改数据的话ajax也会触发就会出错
处理方法是首先建一个隐藏域,把未修改之前的值传给这个隐藏域

思路是把未修改的值与用户输入的值比较,如果两者相等就说明用户没有修改,就把提示清空,并不让程序走ajax

这样校验就基本搞定了,刚刚一个老司机和我说我没有考虑时效性的问题,等我再研究一下,我是一个用心写bug的程序员

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值