0

こんにちは、ボタンとリンクの jQuery イベントを含むフォームがあります。成功すると別のフォームを返す ajaxForm を使用してフォームを送信しています。2 番目のフォームには、document.ready() 関数の最初に呼び出される init 関数を使用して再バインドする、同じボタンとリンクの jQuery イベントがあります。リバインドは正常に機能します。ajaxForm を使用して 2 番目のフォームを送信すると、同じボタン イベントとリンク イベントで 3 番目のフォームが返されます。ボタンとリンクのイベントは、2 番目の init 関数を使用しても再バインドされません。これが問題です。これはjQueryの制限ですか?2回再バインドしますか? どんな考えでも大歓迎です。

コード:

//init functions
jQuery(document).ready(function() {

   initBinding();
   initBindingTwo();

  //button 

jQuery('#next_button').button({
  icons: { secondary: 'ui-icon-carat-1-e' }
);

// pass options to ajaxForm for first form sumit of new program

jQuery('#new_program_form').ajaxForm(options);

//this one works after first form submit
function initBinding() {
     jQuery('#next_button').button({
  icons: { secondary: 'ui-icon-carat-1-e' }
 });


 //this one does not work after second form submit
 function initBindingTwo() {
     jQuery('#next_button').button({
  icons: { secondary: 'ui-icon-carat-1-e' }
 });

});

4

1 に答える 1

0

私は上記のアプローチを放棄し、2 つの ajax 呼び出しと 2 つのフォーム送信のみに固執し、問題を解決しました。

于 2010-11-23T23:20:32.507 に答える