1

为什么如果您在面板上选择一个评级值,然后更改模型和字段值选择。但是如果相反,选择select,那么面板评分上的重复值是不是发生了?

html代码:

 <select name="post[vote][cinema]" ng-model="cinema" ng-change="set(cinema)">
 <p class="dash ng-isolate-scope ng-valid ng-dirty" ng-mouseleave="reset()" 
    tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="10" 
    aria-valuenow="4" ng-model="cinema" max="max">
      <a ng-repeat="r in range track by $index" ng-mouseenter="enter($index + 1)" 
          ng-click="rate($index + 1)" ng-class="{...}" class="ng-scope"></a>

小提琴:http: //jsfiddle.net/smtncL3q/1/

4

2 回答 2

1

我已经设法通过注入指令范围来实现这个工作ngModelrating并在值上分配一个监视。

scope: {
    ngModel: '='
},

...然后在链接功能中:

scope.$watch('ngModel', function(value) {
    scope.value = value;            
});

更新小提琴

于 2015-04-16T11:25:32.723 回答
0

我有点难以理解你的 JSFiddle 究竟是如何工作的,但我建议你在你$parsers的. 当您单击评分时,解析器函数会更新模型,而格式化程序函数会在模型更新时更新评分视图值。$formattersngModelselect

你的解决方案可以用更多的hackish代码来修复,但它不会提高可读性。

于 2015-04-16T11:18:22.510 回答