EXTjs中关于form验证,emptyText属性的问题

ext的form中我们验证,用到emptyText属性的时候,这个相当于一个defalutValue,所以在form提交的时候,会传到后台去,而这不是需要的,我们需要的是只是提示,没有填写的时候,传' '过去.

解决的办法:

只要在表单submit提交之前,加属性 submitEmptyText: false,就能解决这个问题了。

还有一种解决办法:

在有效性检验时需要对表单元素的提交的数据和该表单元素的emptyText比较,如果相同,说明用户没有输入任何文本;如果不同并且非空,说明是用户填写的内容。

 

var thisForm = formInsert.getForm();  
                if (thisForm.isValid()) {   
                   var submitValues =  formInsert.getForm().getValues();  
                    //  修正emptyText造成的提示语句当做value值传递到后台  
                    //  如果是emptyText就改为''  
                    for (var param in submitValues) {  
                        if (thisForm.findField(param) && thisForm.findField(param).emptyText == submitValues[param]) {  
                            submitValues[param] = '';  
                        }  
                    }  return;  
                    thisForm.submit({

也是在表单submit之前处理好就行了.

以上是该问题的解决方法。

后续有很多开发填坑的文章发布,如果对你有帮助,请支持和加关注一下

http://e22a.com/h.05ApkG?cv=AAKHZXVo&sm=339944

https://shop119727980.taobao.com/?spm=0.0.0.0 

 

转载于:https://my.oschina.net/baishi/blog/118559

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值