[英]Trigger ngf-select programmatically
我有一條指令,應在控制器變量更改時打開文件選擇器窗口。 這是指令的代碼段:
angular.module('settingsInternal')
.directive('triggerUpload', function ($timeout) {
return {
restrict: 'A',
link: function (scope, element) {
scope.$watch('mainCtrl.watchedVariable', function (variable) {
if (variable) {
$timeout(function () {
element.triggerHandler('click');
}, 20);
}
});
}
};
});
我遇到的問題是我無法在div上觸發ngf-select。 手動單擊div時,它工作得很好,並且watch函數可以正確調用element.triggerHandler('click')。 我已經浪費了幾個小時試圖找出無法解決問題的原因,如果有人遇到類似的問題,請幫助我找出問題所在。
Ps不要注意變量名,它們僅用於演示目的。
問題不是在angular的ngf-select中,而是在指令使用的input [type = file]中。 Input [type = file]必須通過用戶創建的事件進行初始化,因此,如果要使用功能打開文件上傳窗口,則必須從用戶創建的事件中調用該函數。 希望這對遇到類似問題的人有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.