如何通过javascript数组php laravel4

How to pass javascript array to php laravel4

本文关键字:php laravel4 数组 javascript 何通过      更新时间:2023-09-26

我试图在laravel4中管理用户。我有一个带有用户和复选框的表。我想删除已检查的用户。我以这种方式选择要删除的用户:

var users = new Array();
$("input[type='checkbox']").live("click", function(){
    var id = parseInt($(this).val(), 10);        
    if($(this).is(":checked")) {
        users.push(id);
        alert(users);
    } else {            
        var index = users.indexOf(id);
        users.splice(index, 1);
    }
});

然后我想在控制器deleteUsers中删除这些用户。我该怎么做呢?

route中有这个

Route::get('/worker/delete', 'UsersController@deleteworker'); 

在行动中,我有

$userIds = Input::get('checkbox');
        foreach ($userIds as $userId) {
            $user = DB::table('workers')->find((int) $userId);
            if (!empty($user)) {
                $user->delete();
            }
        }

我的ajax调用看起来像:

$('#delete').click(function(e){
          $.ajax({
            type: "GET",
            url: "worker/delete",
            data: { userIds: users } // users - it you array of user ids
          })
          .done(function() {
            alert("Users deleted");
          });
        });

不工作

首先发送一个ajax请求,如下所示:

$('.btn-selector').click(function(e){
  e.stopPropogate();
  $.ajax({
    type: "GET",
    url: "/worker/destroyByIds",
    data: { userIds: users } // users - it you array of user ids
  })
  .done(function() {
    alert("Users deleted");
  });
});

routes.php中创建指定路由。在指定的操作中执行此操作。

$userIds = Input::get('userIds');
foreach ($userIds as $userId) {
    $user = User::find((int) $userId);
    if (!empty($user)) {
        $user->delete();
    }
}