首页 > Web开发 > 详细

angularjs的ng-repeat回调

时间:2017-04-06 20:47:51      阅读:191      评论:0      收藏:0      [点我收藏+]

  首先html代码是这样的:

<label>Name des Leiters:</label>
<select name="leaderID" id="selectLeaderID">   <option ng-repeat="manager in managers" value="leader_id={{manager.id}}&leader_name={{manager.name}}&leader_email={{manager.email}}" callback-on-end>{{manager.name}}</option> </select>

  因为只有一个ID确定,需要设置option的selected值,但是又不能直接用ng-model或者$().val()来设置,因为value是一长串东西= =0。0我为什么要写这样的代码

所以,只能通过ng-repeat的加载完成后调用回调函数,来完成设置。

  代码如下:

  app.directive("callbackOnEnd", function($timeout) {
      return {
          restrict: "A",
          link: function(scope, element, attrs) {
              if (scope.$last) {
                $timeout(function(){
                  var select = document.getElementById("selectLeaderID");
                  for(var i = 0;i < select.options.length;i++){
                        var parts = [];
                        parts = select.options[i].value.split(‘&‘);
                        if(parts[0].substr(10) == scope.selectLeaderID){
                            select.options[i].selected = true;
                        }
                    }
                });
              }
          }
      };
  });

  添加一个directive,注意要用到$timeout否则每次设置option时都会加载一次,而不是最后加载。

  最后祝各位小朋友们好好学习,天天向上,哈哈哈哈下周复活节放假可以来个西班牙葡萄牙游!

angularjs的ng-repeat回调

原文:http://www.cnblogs.com/sylvialucy/p/6675288.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!