JSColor拾取颜色以触发AngularJS ng-change

时间:2015-04-13 07:43:58

标签: javascript angularjs jscolor

我使用这个插件,JSColor(http://jscolor.com/) 并将输入值与AngularJS ng-model绑定,如下所示:

<input class="color" ng-model="myColor" ng-change="alert(myColor)">

我希望每当我拿起一个颜色时,AngularJS会提醒myColor更改的值,但没有任何反应。

我还应该怎么办?谢谢! :)


添加:

我也试过这个:

<input class="color" ng-model="myColor"> 
<textarea style="color:#{{myColor}}>texttext</textarea> 

在textarea中绑定文本颜色,也不起作用。

2 个答案:

答案 0 :(得分:0)

Angular expressions(如在ng-change中)根据范围进行评估,因此窗口的对象不可见。如果要在更改时调用警报,可以在执行此操作的范围上创建一个函数:

$scope.alert = function(myColor) {
    alert(myColor);
}

或者注入$ window服务:

.controller('ctrl', function($scope, $window) {
    $scope.alert = function(color) {
        $window.alert(color);
    }
})

答案 1 :(得分:0)

由于调用了警报,因此未触发您的变更。  的纳克变= “警报(myColor)”

   $scope.alert = function(myColor) {
   alert(myColor);
}