首页 > 代码库 > angularjs的ng-repeat回调
angularjs的ng-repeat回调
首先html代码是这样的:
<label>Name des Leiters:</label>
<select name="leaderID" id="selectLeaderID"> <option ng-repeat="manager in managers" value="http://www.mamicode.com/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回调
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。