2015-03-12 4 views
0

В моей форме Dijit, у меня есть следующие ValidationTextBox:Использование dojox.validate на Dijit ValidationTextBox, но не делать текст требуется

<input data-dojo-type="dijit/form/ValidationTextBox" 
    name="email" data-dojo-props="required: true, 
    validator:dojox.validate.isEmailAddress, 
    invalidMessage: 'Invalid email'" /> 

Однако, я хотел бы сделать поле не требуется (т.е. позволяют он будет пустым), но все равно используйте метод dojox.validate. Удаление required: true или установка required: false явно не работает; в поле все еще говорится «Недействительный адрес электронной почты». Как я могу использовать только метод проверки, если текст присутствует?

ответ

3

написать свой собственный валидатор и установить необходимые = ложным, так что-то вроде:

<input data-dojo-type="dijit/form/ValidationTextBox" 
    name="email" data-dojo-props="required: false, 
    validator: function(text){ 
        if (!text){ 
        return true; 
        } 
        return dojox.validate.isEmailAddress(text); 
        }, 
    invalidMessage: 'Invalid email'" />