2009-07-02 17 views
0

submitHandlerまたはinvalidHandlerが設定されたら削除する方法はありますか?私のフォームを提出し、私の確認モーダルウィンドウから取り消すと、私の他のボタンはそれらのハンドラーを継承し、やりたいことをやっていません。jquery validation remove submitHandler

さまざまな場所でフォームの送信をアンバインドしようとしました。同様に、バックの検証を再定義し、ボタンを保存しようとして、それは私がフォームからすべてのイベントを削除し、submitHandlerは常に

<script type="text/javascript"> 


    $(document).ready(function() { 


     $(window).keydown(function(event){ 

      document.getElementById('save').src = "/bttn-save.jpg"; 

     }); 


     $.validator.setDefaults({ 
      submitHandler: function() { 
        tb_show("", "#TB_inline?height=400&width=600&inlineId=confirmblock", null); 
      } 
     }); 

     var errorimage = "<img src=\"error.png\" width=\"19\" height=\"19\" alt=\"error\" title=\"error\" style=\"vertical-align:top;margin-top:5px;\" />"; 

     $('#submit').click(function(e) { 

      $('#promoForm').validate({ 
       submitHandler: function() { 
        tb_show("", "#TB_inline?height=400&width=600&inlineId=confirmblock", null); 
      }, 
       invalidHandler: function(e, validator) { 
       var errors = validator.numberOfInvalids(); 
     if (errors) { 
       tb_show("", "#TB_inline?height=150&width=250&inlineId=errorblock", null); 
     } 

     }, 
       errorElement: "span", 
       rules: { 
        additionalinfo: "required" 
       }, 
       messages: { 
        additionalinfo: errorimage 
       } 

      }); 

      document.getElementById('td_info').innerHTML = document.getElementById('additionalinfo').value; 

     }); 

     $('#back').click(function() { 
      $("#promoForm").attr("action", "/step6/?action=back&email=%%=RequestParameter("email")=%%"); 
     }); 


     $('#save').click(function() { 
      $("#promoForm").attr("action", "/step7/?action=save&email=%%=RequestParameter("email")=%%"); 
     }); 

     $('#confirm').click(function() { 
      document.getElementById('promoForm').action = "http://pages.email.microsoftemail.com/thatsit/?email=%%=RequestParameter("email")=%%" 
      document.getElementById('promoForm').submit(); 

     }); 

     $('#attach').click(function() { 
      tb_show("", "#TB_inline?height=300&width=336&inlineId=uploadblock", null); 
     }); 

    }); 
</script> 

答えて

0

彼らはモーダルに存在

最初

と呼ばれているようなものです。送信ボタンをクリックすると、すべての検証が再度追加されます。これにより、特定のケースでThickBoxとValidation JSを変更する必要がありました。