美元的范围.jquery onchange后$watch不触发

$scope.$watch not firing after jquery onchange?

本文关键字:watch 范围 jquery onchange 美元      更新时间:2023-09-26

好的,我似乎无法获得$scope。小心开火…

        $scope.amountselected = 5;
    $scope.qtyselected = 1;
    $scope.$watch(['qtyselected'], function () {
        console.log($scope.availbleprecheckout);
    });
    jQuery(document).ready(function($) {
        jQuery('#weight').on('change', function() {
                $scope.amountselected = parseInt(this.value);
                $scope.$digest();
        });
        jQuery('.input-text.qty').bind('change', function(){
            $scope.$apply(function(fn){
                $scope.qtyselected ='AHHHHH'; 
            });
        });
    }); 
    $scope.$watch(['qtyselected','amountselected'], function () {
            console.log('quantity:'+$scope.qtyselected);
            console.log('weight:'+$scope.amountselected);
            console.log('avail:'+$scope.availbleprecheckout);
    });

我试过$scope。应用范围美元。摘要中,我尝试嵌套$作用域。$watch在文档中准备了。on('change'),但似乎没有任何工作。为什么

如果您想使用$watch,您应该将监视变量的名称作为字符串,而不是字符串数组。

使用简写:

$scope.$watch('qtyselected', function(){
});

如果你想监视多个变量,你可以使用:

$scope.$watchCollection('[qtyselected,amountselected]',function(){
});

$scope.$watch('qtyselected+amountselected',function(){
});