2013-02-15 51 views
4

我已將jQuery-File-Upload代碼添加到我使用Knockout.js的頁面。該代碼使用JavaScript模板引擎,該模板運行良好,但是有誰知道是否有方法使用Knockout的模板?Knockout.js模板和jQuery文件上傳

uploadTemplate和downloadTemplate看起來像函數指針。

根據文檔... uploadTemplate和downloadTemplate方法應該返回jQuery集合對象或呈現的上傳/下載模板的字符串表示形式。

我不確定從哪裏開始。

+0

你問他們的論壇? https://groups.google.com/forum/#!forum/jquery-fileupload – WiredPrairie 2013-02-15 18:00:31

回答

4

我們遇到同樣的問題。我們將knockout與jQuery模板(我們很快將用jsRender替換)結合使用。 JQuery-File-Upload(blueImp)的下載/上傳模板是Django templates。我將這些模板像應用程序中的挖空模板一樣線程化。我們已經封裝在淘汰賽定製綁定jQuery的文件上傳功能:

ko.bindingHandlers.fileupload = { 
    update: function (element, valueAccessor) { 
     var options = valueAccessor() || {}; 

     //initialize 
     $(element).fileupload(options); 
    } 
}; 

我們使用這樣的:

<div id="fileuploadcontrol" 
    data-bind="fileupload: { 
        url: [UPLOAD URL], 
     maxFileSize: [MAX FILE SIZE], 
     acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i, 
     completed: function (e, data) { 
      $.each(data.files, function (index, file) { 
       //Stuff to do with uploaded files 
      } 
     } 
       }"> 

     <div class="fileupload-buttonbar"> 
    <!-- buttons --> 
      //STUFF 

      <!-- The global progress bar --> 
      //STUFF 
    </div> 
</div> 
+0

這是一些瘋狂的綁定 – 2013-09-12 03:28:29