【一点经验分享】Yii2 - ajax 和 client side混合检验

之前yii2的自定义检验需要使用到ajax来触发服务器端自定义代码的检验功能,后来发现整个表单都使用ajax的话有很大的延迟。

思考了一下正常php表单的解决方案,最好的方法就是一部分表单元素使用client-side检验,需要服务器端的再使用ajax,例如email或者用户名是否已被其他人注册了。代码如下:

<?php $form = ActiveForm::begin([
        ‘id‘ => ‘reg-form‘,
        ]); ?>
<?= $form->field($model, ‘name_en‘) ?>
<?= $form->field($model, ‘email‘,[‘enableAjaxValidation‘=>true]) ?>
......
<?php ActiveForm::end(); ?>

email后面的设置[‘enableAjaxValidation‘=>true]就是指明这个activefield才需要使用ajax验证。

时间: 2024-08-07 21:19:28

【一点经验分享】Yii2 - ajax 和 client side混合检验的相关文章

【一点经验分享】Yii2 - custom validator not work 自定义验证无效的解决方法

有个项目正在使用Yii2开发,因为是第一次使用2代Yii,也算是不停的摸索. 昨天就遇到一个问题,谷歌也帮不上忙,就是自己在model里写的自定义validator不生效. 原本以为只是自定义无效,终于在使用unique这个yii原生validator时发现,问题的答案就是使用ajax validation. 为什么自定义validator和原生unique都无效呢?因为这些代码是保存在服务器上的,不使用ajax怎样能获取验证结果呢? yii2中的controller也必须 use yii\we

如何进行PHP压缩(一点经验分享)

<?php echo "原来比率<br />"; $str = '{.....}'; echo strlen($str).'<br />'; //压缩率居中 $compressed = gzcompress($str, 9); echo 'gzcompress:'.strlen($compressed).','."<br />"; //gzuncompress($compressed) //压缩率并列最高 $compress

电话订票之经验分享

中国的春运可谓是人类历史上的一次人口大迁徙,第一次加入到抢票大军中,被各位同仁的速度深深折服了. 在这个信息时代,大家也都习惯了足不出户的网络购票,Metoo!然而,采用传说中的各种神器,360啊,百度啊,猎豹啊,联合几个小伙伴连刷4天,却一张票都没刷到,想想也是醉了!最终还是通过相对原始的方法--电话订票,拿到了回家的"通行证",可以愉快的回家过年了.在此,将电话订票的一些经验分享给大家,以供抢购返程票. 我们都知道,今年的售票时间是上午8:00到下午18:00,每半个小时发售一次,

【原创经验分享】JQuery(Ajax)调用WCF服务

最近在学习这个WCF,由于刚开始学 不久,发现网上的一些WCF教程都比较简单,感觉功能跟WebService没什么特别大的区别,但是看网上的介绍,就说WCF比WebService牛逼多少多少,反正我刚开始入门,就没觉得多大区别啦,这次写的东西跟WebService一样,我们写了一个WCF,那当然就是要用的,要用的话,当然不能只能在.NET平台下用了,必须跨平台呀,所以,Ajax能调用,这个基本的要求就必须要实现的了,所以,本次经验分享就是写JQuery的Ajax调用WCF的服务了.   一.新建

MySQL 性能优化的最佳20多条经验分享

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的                    事,而这更是我们程序员需要去关注的事情. 当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能.这里,我们不会讲过多的SQL语                句的优化,而只是针对MySQL这一Web应用最多的数据库.希望下面的这些优化技巧对你有用. 1. 为查询缓存优化你的查询 大多数的M

使用latex撰写博士,硕士学位论文(浙大博士经验分享)

使用latex撰写博士,硕士学位论文(浙大博士经验分享) 浙大博士:  个人感觉,还是要用latex来写.因为之前发过几篇word排版的中文论文,在参考文献的引用.文字格式调整上,实在是难受.如果坚持用word,请一定用endnote结合word来管理参考文献,否则100多个参考文献的调整一定会浪费你很多时间的. latex不难,就几个简单功能,稍微适应一下就好. 言归正传,我们开始: 1. 模板请采用http://zjuthesistex.googlecode.com/files/rookie

20多条MySQL 性能优化经验分享

当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能.这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库.希望下面的这些优化技巧对你有用. 1. 为查询缓存优化你的查询 大多数的MySQL服务器都开启了查询缓存.这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的.当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了. 这里最主要

用户界面设计经验分享:界面设计技巧分享

如此有用的文章我已记不得是什么时候发现的了,但在看完的那一刻便想将之翻译,分享给大家自己也受用. 时间过了很久,来到了2014年,终于静下心来花了大把时间连同图片一起译成了中文.像我这样业余的翻译六级分数只够及格的程序员,不敢说做到信雅达,但求意思到位. 1 尽量使用单列而不是多列布局 单列布局能够让对全局有更好的掌控.同时用户也可以一目了然内容.而多列而已则会有分散用户注意力的风险使你的主旨无法很好表达.最好的做法是用一个有逻辑的叙述来引导用户并且在文末给出你的操作按钮. 2 放出礼品往往更具

一个硬件高手的设计经验分享

一个硬件高手的设计经验分享 一:成本节约 现象一:这些拉高/拉低的电阻用多大的阻值关系不大,就选个整数5K吧 点评:市场上不存在5K的阻值,最接近的是 4.99K(精度1%),其次是5.1K(精度5%),其成本分别比精度为20%的4.7K高4倍和2倍.20%精度的电阻阻值只有1.1.5.2.2. 3.3.4.7.6.8几个类别(含10的整数倍):类似地,20%精度的电容也只有以上几种值,如果选了其它的值就必须使用更高的精度,成本就翻了几倍,却不能带来任何好处. 现象二:面板上的指示灯选什么颜色呢