【问题标题】:post array from jQuery to yii2 session将数组从 jQuery 发布到 yii2 会话
【发布时间】:2017-03-22 02:47:01
【问题描述】:

我如何发布一个 JavaScript 数组,并将他写入我在控制器中打开的会话 这是我将 id 保存在数组中的视图

<script type="text/javascript">
$(document).ready(function () {
    var data = [];
    s = 0;
    $('.custombtn').click(function () {
        var id = $(this).attr("value");
        data.push(id);
        console.log(data);
    });
});

这是我的控制器,我在其中打开会话,但不知道如何发布要存储在会话中的数组

 public function actionShop() {
    if (!Yii::$app->session->isActive) {
             Yii::$app->session->open();

        $query = Stock::find();
        $pagination = new Pagination([
            'defaultPageSize' => 6,
            'totalCount' => $query->count(),
        ]);
        $stock = $query->orderBy('id')
                ->offset($pagination->offset)
                ->limit($pagination->limit)
                ->all();


    }


    return $this->render('shop', [
                'stock' => $stock,
                'pagination' => $pagination,
    ]);
}

【问题讨论】:

  • 不能直接从js访问php会​​话变量
  • @madalinivascu 那么有没有办法从 js 访问该数组?
  • 是的,使用 ajax 或用 cookie 替换会话
  • 一定有没有 ajax 或 cookie 的方法?

标签: javascript jquery arrays session yii2


【解决方案1】:

使用插入 Ajax

   $(document).ready(function () {
    var data = [];
    $('.custombtn').click(function () {
        var id = $(this).attr("value");
        data.push(id);
        console.log(data);
        $.ajax({
            type: 'POST',
            url: 'controllers/StockController.php',
            data: {data: data},
            dataType: 'json'
        });
    });
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-05
    • 2011-03-22
    • 1970-01-01
    • 2017-05-03
    • 2015-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多