Аякс с jquery в Symfony

Я имею в следующем коде:

В маршруте я определил так:

ajaxordersku:
    path: /ajaxordersku
    defaults: { _controller: AppBundle:Admin:orderskufororderid }
    methods: [GET]

В драйвере, что ты принадлежишь определенному маршруту, наверху у меня есть это:

public function orderskufororderidAction(Request $request)
{

            //$data = $request->get('idn');
            $data=$request->query->get('data');

    if($request->isXmlHttpRequest())
    {
        $encoders = array(new JsonEncoder());
        $normalizers = array(new ObjectNormalizer());
        $serializer = new Serializer($normalizers, $encoders);
        $em = $this->getDoctrine()->getManager();

                    $dql = "select os
                                    from BackendBundle:Orderskus os
                                    where os.ordersOrderid=:ordersOrderid";
                    $query=$em->createQuery($dql);
                    $query->setParameter('ordersOrderid', 1);
                    $posts=$query->getResult();

        $response = new JsonResponse();
        $response->setStatusCode(200);
        $response->setData(array(
            'response' => 'success',
            'posts' => $serializer->serialize($posts, 'json')
        ));
        return $response;
    }
}

и в javascript с jquery это:


Раздавив кнопку:


Он показывает это мне:

introducir la descripción de la imagen aquí

Незакончены 2 вещи: Как я перемещаю стоимость кнопки в драйвер, чтобы использовать изменчивая $data? Какое отсутствие, чтобы перемещать эту стоимость с javascript?

И как я показываю код json в таблице в twig, или который изменяю в jquery, чтобы мочь представлять это в таблице?

0
задан 04.08.2017, 15:16
1 ответ

в маршруте

ajaxordersku:
    path: /ajaxordersku
    defaults: { _controller: AppBundle:Admin:orderskufororderid }
    methods: [POST]

в драйвере

public function orderskufororderidAction(Request $request)
{

            //$data = $request->get('idn');
            $data=$request->request->get('data');
//demás código...

, чтобы перемещать стоимость в драйвер, ты должен посылать это в ajax.

$.post("{{ url('ajaxordersku') }}",
    {
        "data": data //Aquí van las variables que deseas enviar
    },
    function(response, status){
        alert("respuesta " + response + "\nEstado: " + status);
    });

или tambiГ©n

$.ajax({
                             method: "POST",
                             url: "{{ url('ajaxordersku') }}",
                             dataType: 'json',
                             data: {
            "data": data //Aquí van las variables que deseas enviar
             },

, чтобы показывать json в таблице в twig, ты можешь использовать mГ©todo

$jsonArray = json_decode($json, true); // el segundo parámetro "true" para que retorne un array y no un objeto

и перемещаешь переменную jsonArray в render в twig и манипулируешь ею как array.

1
ответ дан 29.10.2019, 23:58
  • 1
    Хороший вельвет solució n. Спасибо. – juanitourquiza 10.11.2017, 13:19