【问题标题】:save Smarty values dynamically in Multidimensional JavaScript array在多维 JavaScript 数组中动态保存 Smarty 值
【发布时间】:2020-10-13 09:18:16
【问题描述】:

我从数据库中获取数据并将其保存在一个 smarty 数组中。现在我想将这些值保存在一个 javascript 数组中,但我不知道它的大小。

{foreach from=$car_owner item=car_item}
    <tr>
        <td>
            <a href="#">
                <script>
                    var arrayPos = [
                        ['{$car_item['longitude']}', '{$car_item['latitude']}']]
                    ];
                </script>
                {$car_item['carName']}
            </a>
        </td>
    </tr>
{/foreach}

该数组仅保存一个经度值和一个纬度值,尽管我为每个值保存了多个值。我确定我需要循环它,但正如我所说我不知道​​我应该循环的大小,因为$car_owner 数组包含从数据库中获取的数据。 帮助将不胜感激。 问候

【问题讨论】:

  • - 看看这个包,它可能对你有帮助:github.com/laracasts/PHP-Vars-To-Js-Transformer
  • @MuhammadSadiq 对不起,它没有帮助。我的问题是当我在脚本标记之外使用数组时,我只得到最后一个值,因为它都在循环内,而且我没有得到旧值..
  • 好的,然后把foreach放到数组里面
  • 在循环外定义js数组,然后在循环内,将值推送到它。

标签: javascript php smarty


【解决方案1】:

你可以用两个循环来做到这一点。

<script>
var arrayPos = [
{foreach from=$car_owner item=car_item}
    ['{$car_item['longitude']}', '{$car_item['latitude']}']]{if !$car_item@last},{/if}
{/foreach}
];
</script>

{foreach from=$car_owner item=car_item}
    <tr>
        <td>
            <a href="#">{$car_item['carName']}</a>
        </td>
    </tr>
{/foreach}

【讨论】:

    猜你喜欢
    • 2011-03-11
    • 2012-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-26
    • 2013-01-17
    • 1970-01-01
    • 2011-11-20
    相关资源
    最近更新 更多