javascript - 寻找一种将对象数组从一个嵌入式脚本传递到另一个嵌入式脚本的方法

标签 javascript arrays parameter-passing

对象数组是在第一个脚本中构建的...“order_items”。我想将其传递到第二个脚本中,以便我可以循环遍历值并构建一个像素以渲染到我的屏幕上。我在尝试传递数组时遇到了困难。

    @for (int i = 0; i < OrderItemsReceived.Count; i++)
{
    <script type="text/javascript" id="pepper" data-search="order_items"> 
        var order_items = [{
            'name':ProductName',
            'sku': SKU',
            'price': UnitPrice.ToString().Replace(",", "")',
            'quantity': Quantity.ToString()'
        }]
    </script>
}

    <script type="text/javascript">
        var script_tag = document.getElementById('pepper');
        var order_items = script_tag.getAttribute("data-search");

        var order_id = @Model.OrderId;
        var pixel_html = '';
        var integration = 'DYNAMIC';
        var program_id = 7302;


        if (order_id && order_items) {
            jQuery.each( order_items, function (i, order_item) {
                pixel_html += '&' + 'ITEM_ID' + i + '=' + order_item.sku +
                              '&' + 'ITEM_PRICE' + i + '=' + order_item.price +
                              '&' + 'QUANTITY' + i + '=' + order_item.quantity;
            });

            if (pixel_html) {
           pixel_html = '<iframe src="https://t.pikespeak.com/track?' +
                'INT=' + integration +
                '&' + 'PROGRAM_ID' + '=' + program_id +
                '&' + 'ORDER_ID' + '=' + order_id +
                pixel_html +
                '" width="1" height="1" frameborder="0"></iframe>';
            }
        }
        $('body').append(pixel_html);
    </script>

最佳答案

这就是我解决问题的方法。

<script type="text/javascript" id="pepper" data-search="order_items">
    alert("hello");
    var order_items = @Html.Raw(Json.Encode(Model.OrderItemsReceived.OrderItemsReceived));
    var order = [];
    var order_listItems = [];
    for (var i = 0; i < order_items.length; i++){
        var orderList = order_items[i];
        order = [{
            'sku': orderList.SKU,
            'price': orderList.UnitPrice,
            'quantity': orderList.Quantity
        }]
        order_listItems.push(order);
    }

我选择继续使用 json 对象,因为我的数组将由键、值对构成。一旦我意识到这一点,变量的范围就不再是问题了。

关于javascript - 寻找一种将对象数组从一个嵌入式脚本传递到另一个嵌入式脚本的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37820562/

相关文章:

javascript - 如何将 JS .sort 添加到 Vue 方法中

javascript - 单击按钮时如何设置转换,它从显示 'none' 变为显示 'block'

php - 使用 Jquery 将数据从 javascript 传递到 php

javascript - 如何在滚动时通过类名检查 div 在屏幕上是否可见?

c++ - 错误在哪里? C++密码输入代码

c++ - 对 N 个不同大小的数组的每个元素应用相同的函数

php - while 在 foreach 循环内的 if 语句内循环......效果不佳

c++ - 如何在 GDB 中将参数传递给函数

c - 取消引用从另一个函数传递给 main() 的指针

javascript - 没有重复字符的最长子串极端情况