2010-02-25 60 views
1

我有這個功能問題提交表單,從窗的fancybox

jQuery("form#add_cv").submit (function(){ 
    if (Spry.Widget.Form.validate(this) == true){ 

      jQuery("#show_rules").fancybox({ 
       'padding'  : 0, 
       'autoScale'  : false, 
       'autoDimensions': false, 
       'transitionIn' : 'none', 
       'transitionOut' : 'none', 
       'width'  : 600, 
       'height'  : 450, 
       'titlePosition'  : 'inside', 
       'scrolling' : 'no' 
      }).trigger('click'); 

      jQuery('div#sb_buttons button#cancel_submit').click(function() { 
       $.fancybox.close(); 
       return false; 
      }); 


      jQuery('div#sb_buttons button#submit_form').click(function() { 
       jQuery("form#add_cv").submit("true"); 
       $.fancybox.close(); 
       return true; 
      }); 

     return false; 
    } 
}); 

在點擊確定按鈕

  jQuery('div#sb_buttons button#submit_form').click(function() { 
       jQuery("form#add_cv").submit("true"); 
       $.fancybox.close(); 
       return true; 
      }); 

,從窗的fancybox。來自實際頁面的表單正在提交,並且fancybox窗口正在關閉,然後提交函數再次重複,我該如何解決問題...對於這種問題抱歉...但我不知道該怎麼做,並且對不起我的英文,希望你能理解我:)謝謝

+2

你英語很好。比我們這裏有的更好。 – 2010-02-25 13:26:28

+0

@James Wiseman - Upvoted熱鬧。 (我目前正在閱讀代碼,但認爲你應該知道)。 – ehdv 2010-02-25 18:53:57

回答

2

一些好的小時的搜索後,我終於解決了這個問題,並大THX到西安的幫助也。

這就是結果:

jQuery("form#add_cv").submit (function(){ 

    if(typeof(accept) != 'undefined'){ 
     if(accept){ return true } 
    } 


    if (Spry.Widget.Form.validate(this) == true){ 

      jQuery("#show_rules").fancybox({ 
       'padding'  : 0, 
       'autoScale'  : false, 
       'autoDimensions': false, 
       'transitionIn' : 'none', 
       'transitionOut' : 'none', 
       'width'  : 600, 
       'height'  : 450, 
       'titlePosition'  : 'inside', 
       'scrolling' : 'no' 
      }).trigger('click'); 


      jQuery('div#sb_buttons button#cancel_sb').click(function() { 
       $.fancybox.close(); 
       return false; 
      }); 

      jQuery('div#sb_buttons button#sb_form').click(function() { 
       accept=true; 
       $.fancybox.close(); 
       return true; 
      }); 


     return false; 
    } 


}); 

我加入這行代碼

if(typeof(accept) != 'undefined'){ 
     if(accept){ return true } 
    } 

單擊確定按鈕後,我宣佈,接受的是真實的,形式可以提交後,由於所有試圖幫助我;)

0

在我看來,當你點擊提交你告訴jQuery提交表單並關閉你的fancybox。然後假設你的提交按鈕實際上是type=submit,它的內在行爲接管並提交表單。

你爲什麼不嘗試從您提交功能刪除行jQuery("form#add_cv").submit("true");

+0

我把它刪除了,沒有反應,我浪費了很多時間嘗試不同的方法,不知道,請幫助 – mIRU 2010-02-26 19:12:45