【问题标题】:select2 inside ng-repeat not workingng-repeat中的select2不起作用
【发布时间】:2014-07-03 06:50:22
【问题描述】:

我正在尝试在 ng-repeat 中使用 select2,但它不起作用。这是我的代码。

HTML

<div ng-controller="mycontroller" ng-app="app">
  <div ng-repeat="x in y">
    <input type="hidden" id="change{$$index$}"/>
  </div>
</div>

ANGULARJS

var myapp = angular.module('app', ['ui.bootstrap']);
myapp.controller('mycontroller',function($scope){
$scope.y=[1,2]
var change1 = $('#change1');
$(change1).select2({
      data:[{'id':1,'text':'Manager'},{'id':2,'text':'Employee'}],
      multiple: false,
      width: "100%",
      placeholder:"None Selected",
      closeOnSelect:true
  });
})

请帮忙。谢谢

【问题讨论】:

  • 您需要使用与 Id 的连接...
  • 您是否缺少 $scope 作为控制器的依赖项,没有 $scope ng-repeat 将如何工作。

标签: angularjs angularjs-select2


【解决方案1】:

错误实际上在于串联。但我没有从评论中意识到,但现在我明白了。这是代码的变化。

var change1 = $('#change1'); //in question
var change1 = $('#change'+1+''); //edited change

谢谢。

【讨论】:

    【解决方案2】:

    这个question 可以帮助你。基本上你需要在加载 ng-repeat 后触发下面的东西。 (您可以在点击事件上调用函数,也可以在特定时间后调用$timeout() 函数。

    $scope.triger_select2 = function(){
      $(".js-example-basic-multiple").select2({});
    }
    
    $timeout(function(){ 
      $scope.triger_select2();
    }20000);
    

    【讨论】:

      猜你喜欢
      • 2020-09-30
      • 2013-06-07
      • 1970-01-01
      • 1970-01-01
      • 2018-08-27
      • 1970-01-01
      • 2016-09-12
      • 2023-03-04
      • 1970-01-01
      相关资源
      最近更新 更多