gpt4 book ai didi

javascript - 访问 ng-grid 中的选择元素

转载 作者:搜寻专家 更新时间:2023-11-01 04:41:49 25 4
gpt4 key购买 nike

我有这个网格选项:

$scope.ngOptions = {
data: 'data',
columnDefs: [
{field: 'Status', displayName: "Status", cellTemplate: selectTableTemplate, enableCellEdit: true},
{cellTemplate: '<button ng-click="update(col, row)">' + Save + '</button>', enableCellEdit: false }]
};


var selectTableTemplate = "<select ng-model='Status' ng-change='changeToFirst(Status, row)'>" +
'<option value="1" class="ng-binding" ng-selected="COL_FIELD == 1">' + 1 + "</option>" +
'<option value="2" class="ng-binding" ng-selected="COL_FIELD == 2">' + 2 + "</option>"</select>";

编辑:如何在 ng-change 函数 changeToFirst 中获取点击的元素并选择第一个选项?

我是这样做的:

 row.elm.children().find('select').find('[value=1]').prop('selected', true);

但我确定那不是正确的方式

最佳答案

您无需编写处理函数来更新数据中的值。 Angular ng-model 将为您制作。假设您的数据对象中有“状态”字段:

$scope.checkStatusChange = function (entity){
console.log(entity.Status);
};

var selectTableTemplate = '<select ng-model="row.entity.Status" ng-change="checkStatusChange(row.entity)">' +
'<option value="1" ng-selected="row.entity.Status == 1">1</option>' +
'<option value="2" ng-selected="row.entity.Status == 2">2</option>' +
'</select>';

引用“row.entity”是指向属于当前行的数据的链接。所以你不需要直接使用“select”元素,数据绑定(bind)会做所有的事情。提供函数“checkStatusChange”用于演示目的。

关于javascript - 访问 ng-grid 中的选择元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20239289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com