2011-03-28 5 views
1

У меня есть форма, которая использует formcheck (класс MooTools, который позволяет выполнять проверки валидации). Все работает отлично. Я также создал часть формы, которая может быть скрыта (по используя класс слайдов mootools) при выборе флажка.Сброс формы для mootools при изменении флажка

Проблема заключается в том, что поля, скрытые связаны в классе formcheck, и регистрируются при загрузке страницы с помощью:

<script type="text/javascript"> 
//<![CDATA[ 
window.addEvent('domready', function() { 

var myCheck = new FormCheck('form1'); 

Я попытался очистив класс на полях, когда флажок с помощью:

$('auto').addEvent('click', function(e){ 
     if (document.getElementById("auto").checked == true) { 
      myVerticalSlide.slideOut(); 
      document.getElementById("password").setAttribute("class", ""); 

, но потому, что он зарегистрирован в начале этого не имеет никакого эффекта, мой следующий шаг должен был logial вспомнить:

var myCheck = new FormCheck('form1'); 

Но потом создал два formchecks ...

Таким образом, решение мне нужно, либо сбросить formcheck или очистить поле пароль от него. Надеюсь, это объяснит проблему, любой вопрос поможет приветствовать :)

ответ

2

Документация FormCheck довольно щадящая, но смотря в исходном коде. Я вижу функции register и dispose.

Вам не нужно, чтобы удалить класс из входного элемента, dispose просто очистить его действия из списка в FormCheck объекта, и register будет разбирать класс снова и добавьте действия:

$('auto').addEvent('click', function(e){ 
     if (document.getElementById("auto").checked == true) { 
      myVerticalSlide.slideOut() 
      myCheck.dispose($('password')) 
     } 
     else { 
      myVerticalSlide.slideIn() 
      myCheck.register($('password')) 
     } 
    }) 
+0

Спасибо LHMathies, работа выполнена :) – jimbo

Смежные вопросы