2016-06-28 3 views
0

私はデータシートで動的コンテンツを生成していますが、テーブルセルの1つにボタンがあります。このボタンは、ページのコントローラのファイルアップロード機能を起動する必要があります。しかし、私はそれをクリックすると何も起こりません(たとえTESTが記録されていないとしても関数は起動しません)。ここでng-file-uploadファイルブラウザがデータテーブルで表示されていません生成された要素

は、ファイルアップロードハンドラ関数です:

$scope.uploadFile = function (file) { 
    //DBG 
    console.log('TEST'); //No TEST is logged to console at this point 
    Upload.upload({ 
     url: '/file-upload', 
     data: {file: file} 
    }).then(function (resp) { 
     console.log('Success ' + resp.config.data.file.name + 'uploaded. Response: ' + resp.data); 
    }, function (resp) { 
     console.log('Error status: ' + resp.status); 
    }, function (evt) { 
     var progressPercentage = parseInt(100.0 * evt.loaded/evt.total); 
     console.log('progress: ' + progressPercentage + '% ' + evt.config.data.file.name); 
    }); 
}; 

とHTMLを動的にこのようなのDataTableに生成されます。

<button class="btn button btn-default button-table" ngf-select="uploadFile($file)"><i class="fa fa-plus-circle"></i></button> 

私は、これはクリックイベントがファイルブラウザをトリガーない問題だと思います動的に私はどのようにこのプラグインでファイル選択イベントを強制的にトリガーするのか分からない。

答えて

0

私は、静的な隠しボタン作成することで問題を解決:

<button id="button-upload-real" style="display: none" ngf-select="uploadFile($file)"></button> 

をし、動的に生成されたDataTableの細胞上のボタンからクリックイベントをトリガします。スイスの時計のように動作します。

関連する問題