textField 失去焦点之后唯一性校验,同组校验填写相同单元格背景色标红并提示

     blur : function(comp) {
                        if(comp.getValue()){
                            grid.invoiceNumberValue = comp.getValue();
                            grid.judgeInvoiceNumber(comp);//唯一性校验
                            comp.renderRecordValue(comp.getValue(),grid.curRecord,null,null,'invoiceNumber');
                            // 添加同一批次下铁路货票号校验 
                            var inputStore = grid.store;
                            if(inputStore.getCount() > 1){//大于1才做这个判断
                                for(var i = 0,r1;r1 = inputStore.getAt(i);i++){
                                    //把上次标红提示去掉
                                    for(var j = 0;j<inputStore.getCount();j++){
                                        grid.getView().getCell(j,9).style.backgroundColor='';
                                    }
                                        if(r1.get("invoiceNumber")&&(i!=grid.globalRowIndex)){//i!=grid.globalRowIndex去掉它与他自己本身校验 by hly 2013-11-19
                                            if(Ext.util.Format.trim(r1.get("invoiceNumber"))==Ext.util.Format.trim(comp.getValue())){
                                                Ext.ux.LevitationMsgBox.msg("提示", "同组铁路货票号号不能重复!(重复铁路货票号号:"+r1.get("invoiceNumber")+")",2);
                                                grid.getView().getCell(i,9).style.backgroundColor='#FF0000';
                                                var record = grid.getStore().getAt(grid.globalRowIndex);
                                                record.set('invoiceNumber','');
                                                grid.startEditing(grid.globalRowIndex,9);
                                                return false;
                                            }
                                        }
                                    
                                }
                            }
                            comp.renderRecordValue(comp.getValue(),grid.curRecord,null,null,'invoiceNumber');
                        }

                }

注:我重写了renderRecordValue()方法,自己写的时候可以用原来的renderer方法

posted @ 2013-12-09 16:42  请喊我皮叔  阅读(382)  评论(0编辑  收藏  举报