我正在用 Django 制作一个网站来上传照片,遵循这篇博文。我一直在 Firefox 中开发,它运行良好。我刚刚在 Chrome 和 Internet Explorer 中尝试过,它们都在选择文件后重新打开打开文件对话框。IE 实际上在第一次之后开始上传(在重新打开的对话框后面)。Chrome 在第二次选择之前不会开始上传,如果第一个选择被关闭或取消,它将重新打开对话框。
我已经浏览了关于 SO 的相关帖子,但我似乎找不到任何对我有意义的东西。给定下面的代码,为什么对话框会打开两次?为什么它在 Firefox 中的行为会有所不同?
images_upload.html :
{% extends "base_generic.html" %}
{% load staticfiles %}
{% block content %}
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
<!-- {{ formE.as_p }} -->
</form>
{% block javascript %}
<script src="{% static 'js/jquery-3.1.1.min.js' %}"></script>
<script src="{% static 'js/bootstrap.min.js' %}"></script>
<script src="{% static 'js/jquery-file-upload/vendor/jquery.ui.widget.js' %}"></script>
<script src="{% static 'js/jquery-file-upload/jquery.iframe-transport.js' %}"></script>
<script src="{% static 'js/jquery-file-upload/jquery.fileupload.js' %}"></script>
<script src="{% static 'photos/js/images-upload.js' %}"></script>
{% endblock %}
{% block image_content %}
<div style="margin-bottom: 20px;">
<button type="button" class="btn btn-primary js-upload-photos">
<span class="glyphicon glyphicon-cloud-upload"></span> Upload photos
</button>
<input id="fileupload" type="file" name="image" multiple
style="display: none;"
data-url="{% url 'ExifReader:image_upload' %}"
data-form-data='{"csrfmiddlewaretoken": "{{ csrf_token }}"}'>
</div>
<div class="modal" id="modal-progress" data-backdrop="static" data-keyboard="false">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Uploading...</h4>
</div>
<div class="modal-body">
<div class="progress" style="height: 42px;">
<div class="progress-bar" role="progressbar" style="height: 42px; width: 0%;">0%</div>
</div>
<br>
编辑:我console.log('HERE');在第 2行添加了该行images-upload.js,并在控制台中打印了两次。我猜脚本以某种方式被调用了两次?
暮色呼如
相关分类