cakephp和jquery提交数据发布

时间:2011-04-01 23:08:09

标签: cakephp jquery cakephp-1.3

我正在使用带有cakephp的jquery,我需要将一些数据发布到控制器的更新功能。我需要将它分开,以便在fiddler中看起来像这样。

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    |

所以这一切都显示在Name列下。

这是我的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");
              }
            });

     });  
 });

感谢

1 个答案:

答案 0 :(得分:1)

您的元素#ID1到#ID7是否有充分理由不具备所需格式的name属性?

如果您使用echo $this->Form->input('Answer.1.body')呈现输入字段,则会自动执行此操作。如果您不喜欢FormHelper默认提供的内容,则可以通过多种方式自定义输出。

然后,您可以使用jQuery("#ID1,#ID2...").serialize()之类的内容来帮助将数据发布回服务器。看起来你需要让jQuery和CakePHP框架为你做更多的工作:)