4

我已将jQuery-File-Upload代码添加到我使用 Knockout.js 的页面中。该代码使用 JavaScript 模板引擎,工作正常,但有人知道是否有使用 Knockout 模板的方法吗?

uploadTemplate 和 downloadTemplate 看起来像函数指针。

根据文档... uploadTemplate 和 downloadTemplate 方法应该返回 jQuery 集合对象或呈现的上传/下载模板的字符串表示。

我不知道从哪里开始。

4

1 回答 1

4

我们有同样的问题。我们将敲除与 jQuery 模板(我们很快将用 jsRender 替换)结合使用。JQuery-File-Upload (blueImp) 的下载/上传模板是Django 模板。我将这些模板视为应用程序中的剔除模板。我们将 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>
于 2013-06-17T13:08:48.550 回答