2016-05-28 3 views
0

Доброе утро, Я программирую с Symfony. Это мое действие:Как я могу ответить на Json с JQuery?

public function selectcarsmonitorsAction($date) { 
    $cars = array(); 
    $users= array(); 

    // Liste des voitures 
    $cars = $em->getRepository('ParcAutoBundle:Car')->FindAllCarsNotINCalendar($location, $date); 

    // Liste des moniteurs 
    $users= $em->getRepository('AuthenticationBundle:User')->FindAllUsersNotINCalendar($location, $date); 

    foreach ($cars as $car) { 
     $cars[] = $car->getId() . " " . $car->getMark() . " " . $car->getRegistrationnumber(); 
    } 

    foreach ($users as $user) { 
     $monitors[] = $user->getId() . " " . $user->getFirstname() . " " . $monitor->getLastname(); 
    } 

    $response = new JsonResponse(); 
    $response->setData(array('cars' => $cars, 'users' => $users)); 

    return $response; 
} 

Первое: я не знаю, что это подчеркнутое? Странно enter image description here

Второе: Я хочу, чтобы поместить это в отборной и выбор (Select для автомобилей и выбрать для пользователей).

Благодарю вас за помощь.

EDIT 1:

Как может я каждый это с JQuery ??

enter image description here

+0

Пожалуйста, посмотрите на [руководство по сериализации] (HTTPS://symfony.com/doc/current/components/serializer.html#normalizers) и особенно [этот ответ] (https://stackoverflow.com/questions/33148750/callback-on-serializer-symfony/33149890#33149890). Написание пользовательского Normalizer не сложно, и я бы предпочел это в этом сценарии (вместо того, чтобы выполнять работу в контроллере) – kero

+0

Я сериализовал автомобили и пользователей с помощью $ carsserialized = $ serializer-> serialize ($ cars, 'json «); && $ usersserialzed = $ serializer-> serialize ($ users, 'json'); вы можете увидеть рис. в редакции. –

ответ

0

в каждом я гнал JSON.parse():

$.each(JSON.parse(cars), function (i, v) { 
     selectcars += '<option value=' + v.id + '>' + v.mark + ' ' + v.registrationnumber + '</option>'; 
    }); 
    $('#cars').append(selectcars); 
2

второй:

var select = $('#selectTag'); 
$.ajax({ 
    url: 'your_api', 
    success: function(data) { 
     var cars = data.cars; 
     $.each(cars, function(index, item) { 
      select.append($('<option>'), { 
       value: xxx, 
       text: xxx 
      })); 
     }); 
    }, 
    error: function(xhr, status, err) { 
     console.error(url, status, err.toString()); 
    } 
}); 
+0

Можете ли вы объяснить OP (в своем ответе), почему '$ list' (или даже' $ listCars') разрешит это? – kero

+0

я неправильно понимаю первый вопрос .. комментарий @ kero должен сделать вещь – squarer

+0

Спасибо за ваш отзыв .. но что я положил в «ххх» .. я хочу в значении идентификатора автомобиля и в тексте отметки и регистрационный номер ?? –