0

我正在尝试在 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
  });
})

请帮忙。谢谢

4

2 回答 2

0

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

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

谢谢。

于 2014-07-25T10:05:21.880 回答
0

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

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

$timeout(function(){ 
  $scope.triger_select2();
}20000);
于 2020-06-11T19:32:44.857 回答