簡體   English   中英

以編程方式觸發ngf-select

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM