jquery - 我如何在 django 中编写自己的自定义表单小部件

标签 jquery python django forms file-upload

我有 django 形式的文件字段。 现在我希望在渲染期间我的文件字段被 jquery fileupload 插件替换。

我怎样才能做到这一点

http://blueimp.github.com/jQuery-File-Upload/

最佳答案

您不需要自定义表单小部件。您需要做的是在 django 模板中显示您的表单,以便它具有以下设置 - https://github.com/sigurdga/django-jquery-file-upload/blob/master/fileupload/templates/fileupload/picture_form.html

包含这些 js 文件:-

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="{{ STATIC_URL }}js/jquery.ui.widget.js"></script>
<script src="{{ STATIC_URL }}js/tmpl.min.js"></script>
<script src="{{ STATIC_URL }}js/load-image.min.js"></script>
<script src="{{ STATIC_URL }}js/canvas-to-blob.min.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap.min.js"></script>
<script src="{{ STATIC_URL }}js/bootstrap-image-gallery.min.js"></script>
<script src="{{ STATIC_URL }}js/jquery.iframe-transport.js"></script>
<script src="{{ STATIC_URL }}js/jquery.fileupload.js"></script>
<script src="{{ STATIC_URL }}js/jquery.fileupload-fp.js"></script>
<script src="{{ STATIC_URL }}js/jquery.fileupload-ui.js"></script>
<script src="{{ STATIC_URL }}js/locale.js"></script>
<script src="{{ STATIC_URL }}js/main.js"></script>
<script src="{{ STATIC_URL }}js/csrf.js"></script>

您的表单 html 包含这些元素,表单的 id 为 fileupload:-

    <form id="fileupload" method="post" action="." enctype="multipart/form-data">{% csrf_token %}
        <div class="row fileupload-buttonbar">
            <div class="span7">
                <span class="btn btn-primary fileinput-button">
                    <i class="icon-plus icon-white"></i>
                    <span>Add files...</span>
                    <input type="file" name="file" multiple>
                </span>
                <button type="submit" class="btn btn-success start">
                    <i class="icon-upload icon-white"></i>
                    <span>Start upload</span>
                </button>
                <button type="reset" class="btn btn-warning cancel">
                    <i class="icon-ban-circle icon-white"></i>
                    <span>Cancel upload</span>
                </button>
                <button type="button" class="btn btn-danger delete">
                    <i class="icon-trash icon-white"></i>
                    <span>Delete files</span>
                </button>
                <input type="checkbox" class="toggle">
            </div>
            <div class="span5 fileupload-progress fade">
                <div class="progress progress-success progres-striped active">
                    <div class="bar" style="width:0%"></div>
                </div>
                <div class="progress-extended">&nbsp;</div>
            </div>
        </div>
        <div class="fileupload-loading"></div>
        <table class="table table-striped"><tbody class="files" data-toggle="modal-gallery" data-target="#modal-gallery"></tbody></table>
    </form>
    <div class="fileupload-content">
        <table class="files"></table>
        <div class="fileupload-progressbar"></div>
    </div>
</div>

关于jquery - 我如何在 django 中编写自己的自定义表单小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13524334/

相关文章:

javascript - 从左到右的文本下划线动画

python - 如何将 dynamo 项目从 scan 转换为 dict/json?

python - 对具有相似行值的值求和

python - cx_freeze 错误 "cx_Freeze.freezer.ConfigError: no base named Console"

javascript - Django:返回包含脚本的 HTML 文件

javascript - 灯箱弹出窗口仅出现一次

javascript - 如何使用 PJAX 设置自定义 xhr header ?

jquery - 为 jqGrid 的选定行禁用子网格扩展

python - 使用 django-ckeditor 避免 django 中的恶意 js

插入中的 Django 子查询