我有这个ajax电话

<script>
function add(serviceId){
$.ajax({
    url: "<?php echo Yii::app()->createUrl($bus->url.'/serAjax'); ?>",
    type: "POST",
    data: {"serviceId": serviceId},

    success: function(result){
        $("#services").append(result);
    },
    error: function (){
        alert('Error');
   }
  });
}


Ajax称此页面

if(isset($_POST['serviceId']))
    {

       $serviceId = $_POST['serviceId'];

    }
    $service = Services::model()->findByPk($serviceId);

    $all = array();
    $ids = array();
    //add services to array
    array_push($all, $service->title);
    array_push($ids, $service->id);

    Yii::app()->session['serviceId'] = $ids;

    foreach ($all as $a){
        echo '<li class="list-group-item">'.$a.'</li>';
    }


用户可以单击多个服务选项,并且每次执行此操作时都会调用此ajax。现在我想发生的是,每当用户添加服务时,它将服务ID存储在$ ids = array();中。但是发生的事情是,每次进行ajax调用时,它都会清空数组,仅保留最后选择的服务。我需要它来保留所有ID。

最佳答案

这样尝试

if(Yii::app()->session['serviceId'])
    $ids  =  Yii::app()->session['serviceId'];
else
    $ids = array();

07-24 09:37