博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Extjs表单输入框异步校验的插件实现
阅读量:6246 次
发布时间:2019-06-22

本文共 2314 字,大约阅读时间需要 7 分钟。

一、效果如图所示

特点:
1、异步后台校验不会对用户操作产生阻塞感;
2、可在用户停止输入后自动校验,避免频繁进行无谓的后台校验;
3、以插件方式实现,方便使用;
二、插件源码如下:
/**
* Created by jiawenjun on 2016/10/19.
*/
Ext.define('Ux.plugins.FieldAjaxVerify',{
extend: 'Ext.AbstractPlugin', alias: 'plugin.fieldajaxverify', buffer:500, url:'', timeout:1000, connectionFailure:'服务器连接失败', init:function(field){
var me=this; var params=me.params; field.enableKeyEvents=true; field.on('keyup',Ext.Function.createBuffered(function(field,e){
var value=field.getValue(); if(Ext.isEmpty(value)){
return; } var params=field.up('form').getValues(); if(Ext.isFunction(me.getParams)){
params=me.getParams(field,value); } Ext.Ajax.request({
url:me.url, method:"POST", params:params, timeout: me.timeout, contentType: "application/json; charset=utf-8", success:function(response){
var obj = Ext.JSON.decode(response.responseText); if(obj.result["success"]===true){
field.setValidation(true); field.validate(); }else{
field.setValidation(obj.result["message"]); field.validate(); } }, failure:function(response){
var result = Ext.JSON.decode(response.responseText); field.setValidation(me.connectionFailure); field.validate(); } }); },me.buffer)) } });
三、应用方式
{name:'equipmentLedgerCategoryName',fieldLabel:'分类名称' ,allowBlank:false ,afterLabelTextTpl :'
*'
,plugins:{ptype: 'fieldajaxverify',url:'/service/uniquenessCheckName'}}
可用配置项:
1、buffer 毫秒数(在多少毫秒内用户没有输入操作则自动向后台发送验证请求
2、timeout ajax请求超时限制(毫秒数)
3、getParams(field,value) 自定义ajax参数内容
 
四、后台服务提供的数据格式
{
   "resultCode" : 0,
   "result" : {
       "message" : "分类名称重复",
       "success" : false
   },
   "msgId" : "41c2c52c-66d4-49c5-be52-0158e71cfe2c",
   "success" : true
}
备注:在Extjs5.1下测试通过,有其他个性化需求可参考此插件进行实现,谢谢。

转载于:https://www.cnblogs.com/jiawenjun/p/6587869.html

你可能感兴趣的文章
创业大学|什么样的BP能让投资人一见钟情
查看>>
入侵CIA和FBI的黑客:可能是一个15岁少年
查看>>
光伏竞价上网 项目盈利将逐步回归均值
查看>>
x86服务器的王者之战 —— 戴尔PowerEdge服务器在全球及亚太市场排名第一
查看>>
《高性能Linux服务器构建实战》——1.6节Nginx性能优化技巧
查看>>
杨永智:我有一些区块链应用的经验可以传授 | 硬创公开课
查看>>
中国人民大学助力政府大数据预警预测平台
查看>>
直接法硅片助力光伏平价上网
查看>>
纵览各国关键信息基础设施配套网络安全法规建设
查看>>
阿里云增速连超亚马逊 云计算三巨头格局将成
查看>>
“想哭”来袭 信息安全产业会“笑”吗
查看>>
“互联网+大数据”成为审讯突破口
查看>>
联发科4G方案渐趋成熟 2016市场或将迎来大反转
查看>>
商场没有永久的敌人 英特尔拟为ARM生产芯片
查看>>
大数据时代:九个大数据应用领域
查看>>
再度入场 重资产探路 公交WiFi卷土重来
查看>>
首次曝光!在线视频衣物精确检索技术,开启刷剧败明星同款时代
查看>>
实战篇-六十六行完成简洁的Rss输出类
查看>>
世界各地GSM和LTE移动网络存在严重安全漏洞
查看>>
资源编排最佳实践之入门篇:云服务器如何从1到N?
查看>>