【问题标题】:Bind dynamic file contents in array format to jtable将数组格式的动态文件内容绑定到jtable
【发布时间】:2012-09-08 12:54:20
【问题描述】:

我正在使用 ASP.NET MVC 3,并且想知道如何将文件的内容作为数组返回到视图中的 jtable。数组的每一行都包含一个逗号分隔的列表。 (文件内容来自 .csv 文件或 excel 电子表格)

第一列包含字段标题,文件中字段标题的数量可以变化,所以我猜你可以说jtable的内容是动态的?

我已经用明确命名的字段编写了 jtables,但那时我才知道需要多少字段。在这种情况下,它可以是 1 到 11 个字段,并且由于字段名称位于数组的第一行,我不太确定如何设置 jtable 以将它们识别为 jtable 的列标题。

首先,这里有几个我希望绑定到表的数组示例。

array[0] = "phone,first,last";
array[1] = "1111111111,firstname,lastname";

或

array[0] = "first,last,email";
array[1] = "firstname,lastname,emailaddress@email.com";

对于第一个示例,我不需要显示“电子邮件”字段,而对于第二个示例,我不需要电话字段。实际内容可能包含很多行,这就是为什么我想将它绑定到启用分页的 jtable。

在我的控制器方法中,我将文件的内容作为一个字符串数组,每个数组项有一行以逗号分隔的字段。我从那里去哪里是个问题。

感谢您的帮助, 嘉莉

实际上,我通过使用 Expando 对象来创建动态对象列表解决了我的第一个问题。 . .现在的问题是 jtable 似乎需要绑定到从帖子返回的结果。我现在得到的 json 对象已经返回了,所以我不需要发帖来获取它。那么,现在的问题是,是否可以将 json 结果绑定到 jtable 而无需让 jtable 发布帖子?

再次感谢。

【问题讨论】:

    标签: arrays dynamic csv jquery-jtable


    【解决方案1】:

    处理类似的问题;我正在返回 json 并且需要绑定到 jtable。这是我的 ajax 调用中的代码。我发现的唯一 jtable 方法是 addRecord。

    希望这会有所帮助,我会在改进并使其功能齐全时进行编辑。是的,我知道我应该只包含格式正确的答案,但由于您没有任何帮助,我们可以从这个开始,让它成为一项正在进行的工作。

    if (data.Result == "OK") {
                        for (var i = 0; i < data.Records.length; i++) {
                            $("#SearchResultsAddContact").jtable('addRecord', {
                                record: {
                                    FirstName: data.Records[i].FirstName,
                                    LastName: data.Records[i].LastName,
                                    NumGroups: data.Records[i].NumGroups,
                                    NumPhones: data.Records[i].NumPhones,
                                    NumTexts: data.Records[i].NumTexts,
                                    NumTags: data.Records[i].NumTags,
                                    NumTDDs: data.Records[i].NumTDDs,
                                    NumEmails: data.Records[i].NumEmails
                                }
                            });
                        }
                        $("#SearchResultsAddContact").jtable('load');
    

    确保按如下方式编辑 jquery.jtable.js 文件:(第 1297-1308 行)

        addRecord: function (options) {
            var self = this;
            options = $.extend({
                **clientOnly: true,**
                animationsEnabled: self.options.animationsEnabled,
                url: self.options.actions.createAction,
                success: function () { },
                error: function () { }
            }, options);
    

    将 clientOnly: 更改为 true

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-09
      • 1970-01-01
      • 1970-01-01
      • 2014-11-26
      • 1970-01-01
      • 2019-05-21
      • 2021-07-24
      • 2020-08-30
      相关资源
      最近更新 更多