2016-03-26 4 views
0

私は$watchというコードの小部分を持っていますが、オートコンプリート(jQueryプラグイン)で使用入力すると起動しません。それ手動タイピング入力以下

app.directive("autoCode", ['elementData', function(elementData) { 
    var codes = elementData.map(function(ele){ 
     return ele.Code; 
    });  
    return { 
    restrict: 'A', 
    scope:{   
    }, 
     link: function(scope, element, attrs) {  
     $(element).autocomplete({source:[codes]});  
    }}; 
}]); 

app.controller('transactionCtrl',['$scope','elementData', function($scope, elementData){ 
    var names = elementData.map(function(ele) { 
     return ele.Name; 
    }), 
    codes = elementData.map(function(ele) { 
     return ele.Code; 
    }); 

    $scope.$watch('code', function(codeValue){ 
     console.log(codeValue); 

    }); 
}]); 

がHTMLの場合のみ火災:

<form > 

    Code: <input type="text" name="code" auto-code ng-model="code"> 
    Name: <input type="text" name="name" auto-name ng-model="name"> 

    </form> 

それは、マニュアルタイピングとオートコンプリートで動作させるには?

+0

こんにちは、フルplunkを提供してください –

+0

働くフィドルを提供できますか?そこで問題をデバッグすることができます。あなたの 'auto-code'ディレクティブはモデルを' code'変数に代入していないはずです。 –

+0

こんにちは、コードの関連部分を提供するだけです。あなたは助けてもらえますか? – user2671755

答えて

0

試してみてください。そのような

$scope.$watch($("input[name='code']").length, function(codeValue){ 
     console.log(codeValue); 

    }); 

O何か。あなたは何度も変更された値以上に時計を置く必要があります

関連する問題