Jquery插件在AngularJS ng repeat中不工作
Jquery plugin not working inside AngularJS ng-repeat
我正试图在AngularJS的ng repeat指令中使用Jquery插件(星级评定插件-链接),但我不知道为什么它不起作用。如果我在Angular的范围之外尝试,那么它就完美地完成了它的工作。
<div ng-controller="MyController">
<div ng-repeat="datum in data">
<span>Name : {{datum.name}}</span><br/>
<span>Age : {{datum.age}}</span><br/>
<input id="rater" class="rating" value={{datum.rate}} min=0 max=5 step=1><!--Third party rating plugin-->
</div>
</div>
html输入被解析为星级,通过ajax请求从后端获取值。我想罪魁祸首似乎是时间,Jquery在Angular之前完成了任务,所以有其他方法可以完成这项任务吗?提前感谢。
您可以使用http://angular-ui.github.io/bootstrap并查找评级指令,它是AngularJS <rating>
指令。
Angular提示:在返回到jQuery插件
我的指令:
renapp.directive('srater',function(){
return {
restrict : 'AE',
link : function(scope, elem, attr){
$(elem).rating('update', attr.value);
}
}
});
Html:
<srater value={{datum.rate}} data-show-clear="false" readonly="true"></srater>
谢谢大家的支持。
最简单的方法可能是在窗口加载后使用jquery setimeout()
函数。
这可能不是一个好方法,但对我来说是一个容易的方法,效果很好。
代码看起来像这样:
jQuery(window).load(function() {
setTimeout(function(){
jQuery("#rater").rating();
}, 10); /****10 is dealy in milliseconds**/
});
如果你使用的是http服务,那么你也可以使用angularjs$timeout服务
类似的东西
$scope.show_ratings = function(id) {
$http({
method : "GET",
url : SITE_URL+"angular_http/fetch_ratings.php",
params: {subcateid: id}
}).then(function mySucces(response) {
$scope.fetch_ratings = response.data.records;
}, function myError(response) {
$scope.myerror = response.statusText;
});
$timeout(function () {
jQuery("#rater").rating();
}, 500);
},
我希望它对所有人都有效。
相关文章:
- ng repeat在ng repeat-过滤器不工作
- 将我的列表 vom ng-repeat 更改为收集重复 ng-click 后,无法正常工作
- 使用ng-repeat时,弹性滑块无法正常工作
- 如何让ng repeat在指令模板中工作
- 为什么Ng Repeat不工作,如果按钮从不同的形式调用
- AngularJS “ng-repeat |滤波器:..“没有像我预期的那样工作(不显示任何数据)
- Angularjs ng-repeat过滤器在v1.0.1中工作,而不是v1.3.7
- Ng-Repeat只工作一次
- AngularJS:$index如何在ng-repeat中工作
- javascript [],[[]] 和 [{}] 在 angularJS 中与 ng-repeat 一起使用时的工作差
- AngularJS ng-repeat,两个单选按钮无法正常工作
- Angular JS - ng-repeat无法正常工作
- 设置变量时,Angular Js ng init在ng repeat内部无法正常工作
- 当ng repeat完成一个事件时触发它'’s的工作
- Jquery插件在AngularJS ng repeat中不工作
- 为什么ng repeat不在angular js中工作(使用指令)
- AngularJS ng repeat-jquery Datepicker在ng repeat内不工作
- Ng-repeat在HTML中不能正常工作,在angular js中编译
- 为什么ng-repeat-start和ng-repeat- end不能正常工作
- 无工作功能,具有ng-repeat