我正在尝试将通过ng-repeat显示的值传递给控制器中的函数。该值在HTML中正确显示,但当我转到该函数时,它显示AngularJS表达式而不是实际值。
HTML如下:
<li ng-repeat="account in accounts | filter:accountQuery" ng-click="setDisplayedFilters('{{account.AccountId}}')">
<span>{{account.Name}}</span>
</li>
当我检查浏览器内部的元素时(在这种情况下为Chrome),它会显示实际的AccountId。
setDisplayedFilters函数如下:
$scope.setDisplayedFilters = function(accountId){
alert(accountId);
$.each($scope.accounts, function(i, item){
if(item.AccountId == accountId)
{
alert("Selected Account Id: " + accountId + "Matching Id in accounts Array: " + item.AccountId);
}
});
};
javascript中的第一个提醒将会执行并显示“{{account.AccountId}}”。第二个不会,因为它将{{account.AccountId}}与实际帐户ID进行比较。所以我想知道的是,我错过了什么导致角度来解释AngularJS expresion字面意思而不是应该放在它的位置?
答案 0 :(得分:0)
- &GT; setDisplayedFilters(account.AccountId)