1

我正在使用 ParamQuery JavaScript 库(ParamQuery 网站)来构建 JavaScript 网格。

使用 JQuery,我使用 Ajax 向我的服务发出请求,该请求返回 JSON 数据。然后我遍历我的 JSON 数据并将其分配给一个数组。我的问题是元素是字符串,但我认为它们需要是一个对象数组。

<script type="text/javascript">
    $(document).ready(function () {
        var DataArray = [];

        $.ajax({
            url: "http://wks52025:82/WcfDataService.svc/GetNotes()?$format=json",
            type: "get",
            datatype: "json",
            success: function (data) {
                $.each(data.d, function (i, item) {
                    DataArray[i] = "[" + item.NotesTitle.trim() + "," + item.NotesText.trim() + "]";
                })

                for (var i = 0; i < DataArray.length; i++) {
                    //alert(DataArray[i]);
                    //Do something
                }

                // GRID LOGIC HERE
                var obj = { width: 800, height: 400, title: "Notes" };
                obj.colModel = [
                    { title: "NotesTitle", width: 500, dataType: "string" },
                    { title: "NotesText", width: 500, dataType: "string" } 
                ];
                obj.dataModel = { data: DataArray }; // Data Array goes here
                $("#grid_array").pqGrid(obj);
            }
        });    
    });
</script>

我附上了我在 VS 中的 Watch 选项卡的屏幕截图以及调试后网格如何呈现的屏幕截图。

视觉工作室手表

我的网格

这是示例代码

谁能帮我解决这个问题?

4

1 回答 1

1

如果问题只是关于将其转换为对象数组,请查看以下行:

$.each(data.d, function (i, item) {
  DataArray[i] = { NotesTitle: item.NotesTitle.trim(), NotesText:item.NotesText.trim() };
})

更新 看过一个例子,你需要一个数组数组

$.each(data.d, function (i, item) {
  DataArray[i] = [  item.NotesTitle.trim(), item.NotesText.trim() ];
})
于 2013-05-14T08:23:58.713 回答