我有一个与角度列表交互的选择框,它可以正常工作。选择框处理'citta'字段,当我更改它的值时,列表被过滤。
ng-model="queryLoc.citta"
在所有事情之前,我是变量
$scope.queryLoc = { citta: ''};
现在我想通过点击谷歌地图的infoWindow内的按钮来设置queryLoc值。当我单击按钮时,我使用此代码调用函数'filtraLoc'
angular.element(document.getElementById('eventCont')).scope().filtraLoc(citta);
这就是filtraLoc正在执行的功能。
$scope.filtraLoc = function(city){
$scope.queryLoc = {citta: city};
};
在我的json中,我有“citta”属性,你可以看到
{
immagine:'/upload/cms/770_x/Lonato(2).jpg',
linkScheda: '/cms-01.00/articolo.asp?IDcms=77193&s=269',
nome: 'MERCATO CONTADINO A LONATO DEL GARDA',
citta: 'Lonato del Garda',
data: 'OGNI SABATO MATTINA DALLE ORE 8 ALLE 13',
categoria: '',
latitudine: '8',
longitudine: '82',
show: 'false'
}
但过滤器不起作用!我的想法也用完了,因为浏览器的控制台没有给我任何错误。
感谢您提供给我的任何帮助或提示。
答案 0 :(得分:1)
解决了:
只需要使用$ digest并转换代码:
angular.element(document.getElementById('eventCont')).scope().filtraLoc(citta);
到此:
var tmp = angular.element(document.getElementById('eventCont'));
tmp.scope().queryLoc = {citta: city};
tmp.scope().$digest();