使用jquery调用cakephp动作并将数组作为参数传递

时间:2014-07-28 17:31:05

标签: jquery arrays cakephp action

我试图找出如何将jquery中的数组传递给cakephp动作,以便对数据库中的某些数据执行某些操作。

我不是带有cakephp的首席开发人员我只想弄明白。

这是一个场景,我们已经建立了一个CMS,其中有一个页面上有页面。我希望能够拖动并重新排序该列表中的项目,然后将其保留回数据库。我正在使用jQuery的UI可排序方法,它就像一个魅力。

var sortArray;
$( ".sitePages tbody" ).sortable({
    placeholder: "sortable-highlight",
    opacity: 0.85,
    axis: 'y',
    handle: '.drag',
    update: function(){
        sortArray = $('.sitePages tbody').sortable('toArray');
    }
});

返回的数组和看起来像这样的数组......

["53c6a933-1aa4-4228-979b-0caa72b40463", "53c6aa4c-ddd0-49ae-b8d7-0d3e72b40463", "53c690d1-51cc-4f08-bba0-061a72b40463",...]

我在我的控制器中有一个动作要触发,它将负责基本上每个这些项目,并更新数据库中的那一行,特别是'order'列1加上它的索引一旦我点击了保存按钮。

我对如何让它发挥作用感到有些困惑。我已经看到我可以通过导航到url来调用cakephp动作,但是我不知道如何将数组传递给它,序列化似乎弄乱了我的数组并且url字符串看起来根本不正确。

1 个答案:

答案 0 :(得分:0)

使用AJAX,您可以通过调用方法(URL)(您要用来解析和存储数据的控制器/方法)作为ajax调用的收件人URL,将结果集返回给控制器。一旦数据在您的方法中,您就可以使用常规的PHP来解析和保存。