【问题标题】:Angular JS replace values ng gridAngular JS替换值ng网格
【发布时间】:2014-06-27 00:27:51
【问题描述】:

我是 Angular JS 的新手,我认为我需要帮助。

这是我的问题: 我有一个与表格链接的 ng-grid。里面有值和一个 ID(这是来自另一个表的外键)。我不想在这个外部表中显示 ID,而是显示另一个字段。

CompanyFactory.getCompanies().success(function (data) { $scope.objs = data })

  $scope.gridOptions = {
        data: 'objs',
        showGroupPanel: true,
        jqueryUIDraggable: true,
        columnDefs: [
              { field: 'COMP_NAME', displayName: 'comp_name'},
              { field: 'COUNTRY', displayName: 'country' },
              { field: 'LU_SECTOR_ID', displayName: 'sector', },
            ]

    };

我想显示扇区名称字段而不是扇区 ID 字段。我怎样才能在这两个表之间建立关系?

 $scope.countries = [
            { COMP_NAME: 'KOLI', COUNTRY: 'KOLI_COUNTRY', LU_SECTOR_ID: '1'},
            { COMP_NAME: 'ZOLI', COUNTRY: 'ZOLI_COUNTRY', LU_SECTOR_ID: '2'},
            { COMP_NAME: 'TULI', COUNTRY: 'TULI_COUNTRY', LU_SECTOR_ID: '3'},

        ];

 $scope.sector= [
            { LU_SECTOR_ID: '1', LU_SECTOR_NAME: 'SECTOR_1'},
            { LU_SECTOR_ID: '2', LU_SECTOR_NAME: 'SECTOR_2'},
            { LU_SECTOR_ID: '3', LU_SECTOR_NAME: 'SECTOR_3'},

        ];

我想在 ng-grid 中显示 SECTOR NAME 而不是 SECTOR_ID。

【问题讨论】:

  • 你能发布一个data对象的sn-p吗?如果您需要在绑定之前从字面上加入对象,则需要手动完成。
  • 对不起,我不清楚。我的意思是$scope.objs = data,你能发布一个对象的 JSON sn-p 吗?不是列。
  • 如何手动绑定?非常感谢您的帮助
  • 看我的回答,你应该在绑定到网格之前链接两个对象。它会更简单,更优雅。

标签: javascript angularjs ng-grid


【解决方案1】:

没有data对象的信息很难回答问题。

但是,假设您的 CompanyFactory 返回的 data 对象类似于:

[
    {
       "COMP_NAME": "Tomms",
       "COUNTRY": "France",
       "LU_SECTOR_ID": "9":,

       "SECTOR": { "SECTOR_NAME": "IT" }
    }
]

你只需要绑定正确的字段:

$scope.gridOptions = {
    data: 'objs',
    showGroupPanel: true,
    jqueryUIDraggable: true,
    columnDefs: [
          { field: 'COMP_NAME', displayName: 'comp_name'},
          { field: 'COUNTRY', displayName: 'country' },

          // Here
          { field: 'SECTOR.SECTOR_NAME', displayName: 'sector', },
        ]

};

但是,如果您将两个对象分开返回,则需要手动链接。我的建议是在服务器端执行该操作并返回我用作示例的对象。

【讨论】:

  • 非常感谢:)
【解决方案2】:

问题来了

{ field: 'LU_SECTOR_ID', displayName: 'sector', }

具体

LU_SECTOR_ID

您需要将此变量的名称更改为 objs 上的名称而不是 id

【讨论】:

    猜你喜欢
    • 2018-02-28
    • 2017-04-15
    • 2015-12-19
    • 2016-11-17
    • 1970-01-01
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多