如何使用angularjs在ng-click中触发另一个元素的click事件?
我正在尝试从触发<input type="file">
元素的click事件button
。
<input id="upload" type="file"
ng-file-select="onFileSelect($files)"
style="display: none;">
<button type="button"
ng-click="angular.element('#upload').trigger('click');">Upload</button>
通常的做法是隐藏被称为丑化的野兽,<input type=file>
并通过其他方式触发其点击事件。
回答:
如果您的输入和按钮是同级(在您的情况下是OP):
<input id="upload" type="file"
ng-file-select="onFileSelect($files)"
style="display: none;">
<button type="button" uploadfile>Upload</button>
使用指令将按钮的单击绑定到文件输入,如下所示:
app.directive('uploadfile', function () { return {
restrict: 'A',
link: function(scope, element) {
element.bind('click', function(e) {
angular.element(e.target).siblings('#upload').trigger('click');
});
}
};
});
以上是 如何使用angularjs在ng-click中触发另一个元素的click事件? 的全部内容, 来源链接: utcz.com/qa/417323.html