范围滑块,带有来自symfony对象的值

时间:2016-04-22 10:20:45

标签: jquery symfony

我有一个存储一些系数的对象。

我得到像这样的系数

存储库:

public function findVal()
{
    $query = $this->createQueryBuilder('v')
                  ->select('v.coef')
                  ->getQuery();

    $result = $query->getResult();


    //$ids = array_column($result, "coef");
    return $result;
}

控制器:

public function bienAction(Request $request)
{
    $em = $this->getDoctrine()->getManager();
    $devis = new Devis();

    $bien = new Bien();
    $formBien = $this->createForm(BienType::class, $bien);

    $valeur = $em->getRepository('ListeBundle:ValeurReconstruction')->findVal();

    //dump($valeur);

    //$jsonVal = json_encode($valeur);

    //dump(json_encode($valeur));

    $formBien->handleRequest($request);

    if ($formBien->isValid() && $formBien->isSubmitted()) {
      ...
    }

    return $this->render('DevisBundle:Devis:bien.html.twig', array(
        'formBien' => $formBien->createView(), 'valeur' => $valeur
    ));
}

现在我想在我的范围滑块中使用那些coef,所以我需要一个js数组。

$(function() {
var valMap = [0, 40.2, 50, 63, 90, 110, 125, 140, 160, 225, 250, ];
$("#slider-range").slider({
    min: 1,
    max: valMap.length - 1,
    value: 0,
    slide: function(event, ui) {
        $("#amount").val(valMap[ui.value]);
    }
});

});

但我似乎无法在互联网上找到正确的答案。我只能通过使用RangeType来使用symfony吗?

1 个答案:

答案 0 :(得分:1)

执行此操作的一种简单方法是在Twig模板中添加<script>

<script>
    window.valMap = [{{ valeur|join(',') }}];
</script>

然后在脚本中使用window.valMap