2012-10-18 33 views
0

我試圖重新綁定click事件張貼的形式和Ajax的HTML連載()返回阿賈克斯HTML後空

$('.btnSave').addClass('yui3-button').click(function() { 
    var $this = $(this); 
    var id = $(this).parent().attr('id'); 

    $.post(
     "MTrades/save", 
     $.param({ mycase: 1 }) + '&' + $(this).parent().parent().serialize(), 
     function(data) { 
      alert("page - " + data); 
      $this.parent().fadeOut("fast").load(
       "MTrades/index/"+id+"/options", 
       function() { 
        //rebind the click event 
        BindClick(); 
       }).fadeIn("fast"); 
      }); 
      return false; 
     }); 

表單參數發送的第一次作品,但不是第二次 (在我保存並重新載入html之後).serialize()返回空。

HTML(縮短):

<form id="Form2"> 
    <button> 
    <div> 
     <button>save 
     <form> 
      <table> 
      </table> 
     </form> 
    </div> 
</form> 

感謝

+1

派內<form>你是什麼意思與重裝?表單的內部表單不起作用。 –

+1

在你的html中你有一個'form'內的'form'(這是無效的)哪一個實際上被提交? –

+0

如果我將外部格式更改爲div,如何從保存btn中獲取內部格式?它是'$(this).parent()。find('form')。serialize()'是否有一種更優雅的方式來查找內部表單? – devmonster

回答

0

我已經取代外形式<div> 和我一起$(this).parent().find('form').serialize() 代替$(this).parent().parent().serialize()