Javascript 将JSFIDLE迁移到asp.net与IDE中的问题:未加载表datagrid

Javascript 将JSFIDLE迁移到asp.net与IDE中的问题:未加载表datagrid,javascript,jquery,asp.net,c#-4.0,jquery-easyui,Javascript,Jquery,Asp.net,C# 4.0,Jquery Easyui,我正在使用Visual Studio 2013将此代码移动到ASP.Net中。假设有用户保存到数据库中的购物车数据,并且他们希望在返回时再次看到该数据。所以我想填充购物车的表datagrid。使用C#从codebehind准备数据,并使用以下代码将数组序列化为javascript。数组已成功传递到javascript var arrList = new List<object>(); string x = string.Empty; int i =

我正在使用Visual Studio 2013将此代码移动到ASP.Net中。假设有用户保存到数据库中的购物车数据,并且他们希望在返回时再次看到该数据。所以我想填充购物车的表datagrid。使用C#从codebehind准备数据,并使用以下代码将数组序列化为javascript。数组已成功传递到javascript

var arrList = new List<object>();

        string x = string.Empty;
        int i = table.Rows.Count;
        foreach (DataRow row in table.Rows)
        {
            string name = row[0].ToString();
            string quantity = row[1].ToString();
            string price = row[2].ToString();
            string remove = "X";

            arrList.Add(new [] {name, quantity, price, remove});
        }

        return (new JavaScriptSerializer()).Serialize(arrList);

但是,此函数似乎没有加载表。这里发生了什么?

在一个方面,C代码背后的服务器端代码无法生成与jquery/javascript中创建的数组结构相同的数组结构。这就是这个练习教给我的。我可能错了,因为这是我学习jquery/javascript数组实现的第一次也是最长时间的实验,将数组结构从C#序列化到客户端

另一方面,上面的jquery函数没有任何问题。只要数据可用,并且数组的结构适合函数访问代码的基础,它就会填充html表datagrid

然而,完成所有这些工作的一个主要步骤是确保只有在DOM元素完全加载后才调用这些函数。至少在这种情况下,这是一个隐藏的问题

function loadData(cartIndex, event) {
    var $cart = $('.news:eq(' + cartIndex + ')');
    alert(data[cartIndex]);
    $cart.find('.cartcontent').datagrid('loadData', data[cartIndex]);    
    $cart.find('.total').text('Total: $' + data[cartIndex].total);
}