Wie kann ich überprüfen Ext.form.DateField mit min - /maxwert, ohne Zeit?

Ich habe Folgendes problem: ich möchte überprüfen einer DateField-so, dass es einen Wert hat, der zwischen minValue /maxValue-Bereich. (größer oder gleich, kleiner oder gleich)

Das problem ist, dass ich denke, der Rahmen nimmt sich die Zeit, in Millisekunden.

Habe ich versucht, mit einer benutzerdefinierten vtype wie:

Ext.apply(Ext.form.VTypes,{
dates: function(val, field){
    try{
        if(this.disabled){
            return true;
        }

        if(Ext.value(val,null,false)==null){
            this.datesText = "This field is required.";
            return this.allowBlank; //the text message won't be shown in case blank is allowed.
        }

        if(Ext.value(field.minValue,null,false)!=null){
            if(Ext.util.Format.date(val,"Ymd")<Ext.util.Format.date(field.minValue,"Ymd")){
                this.datesText = "The value is invalid.<br/>";
                this.datesText = "it must be greater or equal than " + field.minValue;
                return false;
            }
        }

        if(Ext.value(field.maxValue,null,false)!=null){
            if(Ext.util.Format.date(val,"Ymd")>Ext.util.Format.date(field.maxValue,"Ymd")){
                this.datesText = "The value is invalid.<br/>";
                this.datesText = "It must be lower or equal than " + field.maxValue;
                return false;
            }
        }

        return true;

    }catch(e){
        return false;
    }
},
datesText: 'The value is invalid.', //error message
datesMask: //  //regexp to filter the characters allowed

});

Im Grunde, was es tut, ist, konvertieren Sie die Werte zu einer " Ymd' - format konvertieren und dann vergleichen Sie die Werte als zahlen.

Wenn ich diese debug-code, der Punkt geht in Ordnung, aber aus irgendeinem Grund habe ich immer noch eine Fehlermeldung erhalten. Ich glaube, der Rahmen wird versuchen, zu validieren, das Feld wieder nach meiner überprüfung.

Danke!

Sebastián

InformationsquelleAutor Sebastián | 2010-11-12
Schreibe einen Kommentar