Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 基础设施网格数据绑定_Jquery_Infragistics_Ignite Ui_Iggrid - Fatal编程技术网

Jquery 基础设施网格数据绑定

Jquery 基础设施网格数据绑定,jquery,infragistics,ignite-ui,iggrid,Jquery,Infragistics,Ignite Ui,Iggrid,为了解决我的问题,我尝试了以下帖子中的建议: 我有一个Infragistics igGrid,它使用JSON对象的javascript数组作为数据源。当我将行硬编码到数组中时,网格会完美地加载行。但是,当我试图通过AJAX调用从数据库中获取行时,网格不会加载任何行。这是我的密码: <table id="grid"></table> <script type="text/javascript"> $(function () {

为了解决我的问题,我尝试了以下帖子中的建议:

我有一个Infragistics igGrid,它使用JSON对象的javascript数组作为数据源。当我将行硬编码到数组中时,网格会完美地加载行。但是,当我试图通过AJAX调用从数据库中获取行时,网格不会加载任何行。这是我的密码:

<table id="grid"></table>

    <script type="text/javascript">

        $(function () {

            // user list is initially empty
            var userList = [];

            // get user list
            $.ajax({
                type: "POST",
                contentType: "application/json; charset=utf-8;",
                url: "/AJAX_Handlers/GetUserList.ashx",
                dataType: "json",
                success: function (Result) {

                    // load the user list
                    $.each(Result, function (i, item) {
                        userList[i] = { "Name": Result[i]["Name"], "Email": Result[i]["Email"], "OPhone": Result[i]["OPhone"], "CPhone": Result[i]["CPhone"], "HPhone": Result[i]["HPhone"], "FPhone": Result[i]["FPhone"], "Address1": Result[i]["Address1"], "Address2": Result[i]["Address2"], "City": Result[i]["City"], "ZIP": Result[i]["ZIP"], "Active": Result[i]["Active"], "Contractor": Result[i]["Contractor"] };
                    });

                },
                failure: function (arg1, arg2) {
                    alert(arg1 + '\n\n' + arg2);
                },
                error: function (Result, Error, arg3, arg4) {
                    alert(Result + '\n\n' + Error + '\n\n' + arg3 + '\n\n' + arg4);
                }
            });

            // define grid properties
            $("#grid").igGrid({
                columns: [
                    { headerText: "Name", key: "Name", dataType: "string" },
                    { headerText: "Email", key: "Email", dataType: "string" },
                    { headerText: "Office #", key: "OPhone", dataType: "string" },
                    { headerText: "Cell #", key: "CPhone", dataType: "string", hidden: "true" },
                    { headerText: "Home #", key: "HPhone", dataType: "string", hidden: "true" },
                    { headerText: "Fax #", key: "FPhone", dataType: "string", hidden: "true" },
                    { headerText: "Address", key: "Address1", dataType: "string", hidden: "true" },
                    { headerText: "Apt/Suite", key: "Address2", dataType: "string", hidden: "true" },
                    { headerText: "City", key: "City", dataType: "string" },
                    { headerText: "State", key: "StateName", dataType: "string" },
                    { headerText: "ZIP", key: "ZIP", dataType: "string" },
                    { headerText: "Active", key: "Active", dataType: "bool" },
                    { headerText: "Contractor", key: "Contractor", dataType: "bool" }
                ],
                width: "100%",
                height: "400px",
                autoGenerateColumns: false,
                renderCheckboxes: true,
                dataSource: userList
            });
    });

</script>

网格可以很好地加载行。我知道“GetUserList.ashx”中的代码工作正常,因为当我使用该警报框时网格正在工作。有人能就我在这里可能出错的地方提供一些建议吗?

事实证明,我的网格初始化的速度比我的AJAX调用发送响应的速度快,因此在初始化网格时,userList数组中没有任何行。为了解决这个问题,我只需在AJAX函数的“success”事件中初始化网格,以确保在初始化网格之前userList数组中包含数据

以下是我从基础设施部门得到的回应:

他们提供了4条建议,第一条是帮助我的建议

希望这能像帮助我一样帮助别人

alert("hey");