我有一个列表,用户可以点击' list-items'当他们点击每一行时,它会触发一个文件选择器。继承人HTML ..
<div class="panel panel-default" ng-controller="myCtrl">
<div class="panel-heading">
<h4 class="panel-title">
<!-- Pipe file through Service -->
<div style="padding-bottom:30px">
<div class="file" onClick="onFileButtonClicked()" ng-click="triggerEvent()">
<input type="file" name="files[]" id="fastq-file" multiple />
<label class="file-button" for="fastq-file" >
<img src="img/upload.png" alt="add"> Upload FASTQ/FASTA File(s)
</label>
</div>
</div>
</h4>
</div>
</div>
继承人angular.js ......
function myCtrl($scope) {
$scope.triggerEvent = function () {
console.log("Changed");
}
}
我已经有一个纯粹的javascript&#39;在变化&#39;获取文件并将其传递到服务的事件。我需要做的是在选择文件后触发angular.js事件。所以现在有角度的点击&#39;打开文件选择器时触发事件,而不是在选择文件后触发事件。如何在选择文件后触发角度事件,而不是在打开文件选择器时触发。
答案:我想通了......所以在我的javascript on change函数中我添加了这行代码..
angular.element('#angular-controller').scope().myFunction();
然后在我称之为&#39; ng-controller =&#34; myController&#34;&#39;的HTML中。我把id&#39;#angular-controller&#39;。所以现在当javascript&#39; on change&#39;函数被调用它触发了#scope; myController&#39;中的$ scope.myFunction()。