我可以在jQuery.ajax中的CodeIgniter中调用多个路由吗?

时间:2014-04-19 20:11:19

标签: php jquery ajax codeigniter

我在CodeIgniter中执行类似的操作 -

$('#addSomeData').click(function({
    $.ajax({
        type: "POST",
        url: "singleroute",
        data: $("#theform").serialize(),
        success: function(data) {
            $('#tableID').load('viewpage #tableID');
        }
    });
});

通常,我在config\routes.php中放置一条路线。像下面的东西 -

$routes['singleroute'] = 'myclass/mymethod';

使用上面的代码一切正常。但是,我想在一键按钮上触发多条路线。实际上,我想在五个不同的表中放置一些默认值。我知道一种简单的方法,我可以在mymethod中为不同的表放置多个插入查询。现在,我的问题是 - 我可以在一个触发器中调用多个url吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试这样的方法同时发送多个异步请求:

$.when(
    $.ajax("singleroute/task1"),
    $.ajax("singleroute/task2")
).then(successCallback, failureCallback);

然后successCallback将在所有请求完成后触发,如果任何一个请求失败,failureCallback将触发。详细了解jQuery website上的when

CodeIgniter路线:

$routes['singleroute/(:any)'] = "myclass/mymethod/$1";

类方法(mymethod):

public function mymethod($task)
{
    // Depending on the $task do something specific
}