0
生成的元素,我開始與AngularJS和我需要綁定「負荷」和「錯誤」事件I幀:AngularJS:綁定事件偵聽器,使用jQuery,通過NG-重複
<ul data-ng-controller="WebServicesCtrl">
<li data-ng-repeat="webservice in webservices">
<a href="{{webservice.wsdl}}">{{webservice.name}}</a>
<iframe src="{{webservice.wsdl}}" class="hidden"></iframe>
</li>
</ul>
我試圖使用$scope.watch
和$scope.apply
沒有成功。我需要將事件綁定到iframe創建上,因爲它會自動加載給定的src
。事情是這樣的:
app.controller('WebServicesCtrl', function WebServicesCtrl($scope, $http) {
$http.get('/webservices').success(function(data /* from expressjs, yaaay! */) {
$scope.webservices = data;
/* make iframes listen to load and error right after scope change,
before AngularJS inject them. */
});
});
我MUST NOT
使用<iframe onload="" onerror="" />
。 我想知道jQuery的形式。 「純AngularJS」案也受到歡迎。只是不記得jQuery是不需要的。有時我們獲得了巨大的遺產,而且事情不可能很美。
我應該使用$injector
或類似的東西嗎?那份文件太年輕了,很痛。感覺就像我不得不很快研究源代碼。
謝謝你很多,@PraveenramBalachandar!我認爲這將會完成這項工作。 只是爲了好奇,有沒有其他的「常用」方式? 我剛剛意識到我會花一些痛苦的日子,直到這個解決方案,所以知道相似之處是明智的。 –
angularJS中的一般原則是將控件包裝爲指令,以便更好地控制元素。特別是在類似於你的情況下。此外,它使您可以在幾乎任何控制器中使用此功能,而不僅限於此HTML結構。如果你想將事件綁定到由角度呈現的元素,這是最好和最乾淨的方法,以及「常用」方式:) –