为ng-grid中的下拉列表设置默认值

时间:2017-02-06 06:03:25

标签: angularjs drop-down-menu ng-grid ui-grid

我有一个角度ng-grid,其中一个coulmn有一个下拉

    name: 'reportses[0].reportStatus.id',
    displayName: 'Status',
    width: '230',
    enableCellEdit: true,
    editableCellTemplate: 'ui-grid/dropdownEditor',
    cellFilter: 'mapReportStatus:this',
    editDropdownIdLabel: 'id',
    editDropdownValueLabel: 'value',
    editDropdownOptionsArray: vm.radStatusList

其中

 vm.radList = {
      "code": 0,
      "message": "Total 3 records found",
      "result": [
        {
          "id": 10,
          "value": "Pending",
          "prevId": 9,
          "type": "R"
        },
        {
          "id": 11,
          "value": "Done",
          "prevId": 9,
          "type": "R"
        },
        {
          "id": 12,
          "value": "Reported",
          "prevId": 9,
          "type": "R"
        }
      ]
    }

如果没有值(reportses[0].reportStatus.id

,我想设置一个默认值

在下拉部分的设置值

中添加了此代码
var defaultSpecimen = {};
        defaultSpecimen.id = Constants.ORDER_STATUS_PENDING;
        defaultSpecimen.value = Constants.PENDING;
        vm.radStatusList.push(defaultSpecimen);

        vm.gridOptions.columnDefs[4].editDropdownOptionsArray = vm.radStatusList;

但现在价值出现了两次。

enter image description here

1 个答案:

答案 0 :(得分:0)

您正在向列表中添加新选项。而是将需要显示的那个分配给网格数据源。

vm.gridOptions.columnDefs[4].editDropdownOptionsArray = vm.radStatusList[vm.radStatusList.indexOf(defaultSpecimen)];