【问题标题】:unable to set default option in select dropdown with dynamically fromed dropdown ng-model in the dropdown无法在选择下拉菜单中设置默认选项,在下拉菜单中使用动态的下拉菜单 ng-model
【发布时间】: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


【解决方案1】:

我觉得你应该加ng-selected="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" ng-selected="dynamicScopename"></select>'

【讨论】:

    猜你喜欢
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-14
    • 2018-05-26
    • 1970-01-01
    相关资源
    最近更新 更多