【发布时间】:2015-10-19 06:49:23
【问题描述】:
在我的 Angularjs 应用程序中,我需要动态返回带有所选选项的下拉选择。所以我使用了以下功能:
function getCellRendererMapping(data) {
if (data.order == 6) {
return function(params) {
params.$scope.payRateRegDataOptions = data.data;
var dynamicScopename = "data.' + params.colDef.field + data.order +'"
$scope.dynamicScopename = data.data[0];
// console.log("dynamic scope value" + $scope[dynamicScopename]);
return '<select ng-options="eachPayRate.text for eachPayRate in payRateRegDataOptions" name="payrate_s' + params.column.index + '" id="payrate_s' + params.column.index + '" ng-model="dynamicScopename"></select>';
}
}
}
所以发生的事情是下拉菜单正确形成,并且下拉选项也很好地填充。但我面临的问题是下拉菜单中的默认设置选项不起作用,即使我使用以下代码设置默认选项,我的 ng-model (dynamicScopename) 也没有设置。
$scope.dynamicScopename = data.data[0];
【问题讨论】:
-
dynamicScopename 的值是什么以及选择中填充的内容是什么?请记住,只有当 ngModel 值与下拉列表中填充的值之一匹配时,select 才会显示默认值
-
你想怎么用这个?为什么不为此使用一些指令?
-
dynamicScopename 的值应该是下拉选项的第一个。在我的下拉列表中,选项被正确填充,我只是在索引“0”处分配给 dynamicScopename。 $scope.dynamicScopename = data.data[0];
-
Grundy,我使用它在网格选项中形成 ag-grid 单元格渲染器,如 cellRenderer:getCellRendererMapping(inputs)。 (ag-grid.com/best-angularjs-grid/index.php)。您提到的指令是否有任何示例参考代码,因为即使在那里我也需要动态形成所选下拉列表模型的名称。如果我没有正确关注你,请告诉我。
-
我认为你应该添加使用一些自定义网格
标签: javascript angularjs angularjs-scope angularjs-ng-repeat