2011-04-01 114 views
0

我用cakephp使用jquery,我需要發佈一些數據到控制器的更新函數。我需要它分開,以便它看起來像這樣在提琴手cakephp和jquery提交數據post

Name     | Value 
data[Answer][1][body] | John DC 
data[Answer][2][body] | Company 
data[Answer][3][body] | Title 
data[Answer][4][body] | Country 
data[Answer][5][body] | Email 
data[Answer][6][body] | Phone 
data[Answer][7][body] | test 




Name                             | Value 
    data[Answer][1][body]:John DC,data[Answer][2][body]:Company,data[Answer][3][body]:Title,data[Answer][4][body]:Country,data[Answer][5][body]:Email,data[Answer][6][body]:Phone,data[Answer][7][body]:test | 

因此,它顯示在名稱列下。

這裏是我的ajax

$j(document).ready(function() { 
    $j('#form').click(function() { 
     alert("hi"); 
     $j.ajax({ 

      type: 'post',  

      data: 
        "data[Answer][1][body]:" + $j('#ID1').val() + 
        ",data[Answer][2][body]:" + $j('#ID2').val() + 
        ",data[Answer][3][body]:" + $j('#ID3').val() + 
        ",data[Answer][4][body]:" + $j('#ID4').val() + 
        ",data[Answer][5][body]:" + $j('#ID5').val() + 
        ",data[Answer][6][body]:" + $j('#ID6').val() + 
        ",data[Answer][7][body]:" + $j('#ID7').val(), 

      url: "/mypage/update", 
      success: function(){ 
       alert("Done"); 
       } 
      }); 

    }); 
}); 

感謝

+0

使用json解決了它。但現在碰到一個新的問題 將張貼在一個新的問題 – Autolycus 2011-04-01 23:34:34

回答

1

是否有一個良好的理由的元素#ID1至ID7#中沒有你需要的格式name屬性?

如果您使用echo $this->Form->input('Answer.1.body')來呈現您的輸入字段,則會自動發生。如果你不喜歡FormHelper默認給你的東西,有許多方法來定製輸出。

然後,您可以使用諸如jQuery("#ID1,#ID2...").serialize()之類的內容來幫助將數據發回服務器。似乎你需要讓jQuery和CakePHP框架爲你做更多的工作:)

+0

我剛剛看到你的問題。除非我誤解你在做什麼,否則我會再看看CakePHP的食譜,例如http://book.cakephp.org/view/1390/Automagic-Form-Elements。我只會在特殊情況下使用提琴手。 – contrebis 2011-04-01 23:49:57