微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JavaScript 数组正在被覆盖

如何解决JavaScript 数组正在被覆盖

我有一个 Smarty foreach 循环,在其中我尝试推送到名为 JavaScript arrayarrayPorperties。但是 arrayPorperties内容只是获取所有先前值的最后一个值被覆盖。任何解决方案?
注意:assign 必须在循环内完成,因为它正在从 Smarty 数组 user_properties 获取值,否则它将无法工作

<script type="text/javascript">user_properties = [];</script>
{​​​​​​​foreach from=$user_properties item="user"}​​​​​​​
    {​​​​​​​assign var='tmp_coords' value=$user->get_coords()}​​​​​​​
        <script>
            user_properties.push(
            ['{$tmp_coords[0]}','{$tmp_coords[1]}','{$user->get_name()}','{$user->get_id()}']
            )
        </script>
{​​​​​​​/foreach}​​​​​​​

解决方法

我认为你可以做这样的事情。

但是我没有测试环境。也许在那之后你需要使用 JSON.Parse。

<script type="text/javascript">
    var user_properties = '{ldelim}{$user_properties}{redlim}';
</script>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。