我已经配置了dropzone并在我的localhost(这是一台Windows机器)上测试了它。一切正常,Laravel正在上传和处理文件。问题是我的网络服务器上没有发生同样的事情。两台机器上的代码相同。在Windows上,div中的dropzone正确显示(文本说拖放文件),但在Web服务器上没有显示文本,我无法单击该区域。
Chrome开发工具说:
Uncaught error: No URL provided
即使我配置了网址。我搜索了这个错误,发现禁用autoDiscover应解决它。我尝试了这个,但它甚至在本地服务器上都没有工作。
这是我的dropzone选项文件:
Dropzone.options.editFilijalaDropzone = { // The camelized version of the ID of the form element
// The configuration we've talked about above
autoProcessQueue: false,
uploadMultiple: true,
parallelUploads: 10,
maxFiles: 10,
addRemoveLinks: false,
acceptedFiles: '.jpeg,.jpg,.png,.gif',
url: "/uploadNew/filijale/filijala/" + document.getElementById('filijala_hidden').value,
headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') },
// The setting up of the dropzone
init: function() {
var myDropzone = this;
// First change the button to actually tell Dropzone to process the queue.
var element = document.getElementById('edit_filijala_submit');
var form = document.getElementById('edit_filijala_form');
element.addEventListener("click", function(e) {
// Make sure that the form isn't actually being sent.
e.preventDefault();
e.stopPropagation();
myDropzone.processQueue();
});
// Listen to the sendingmultiple event. In this case, it's the sendingmultiple event instead
// of the sending event because uploadMultiple is set to true.
this.on("sendingmultiple", function() {
// Gets triggered when the form is actually being sent.
// Hide the success button or the complete form.
});
this.on("successmultiple", function(files, response) {
// Gets triggered when the files have successfully been sent.
// Redirect user or notify of success.
form.submit();
});
this.on("errormultiple", function(files, response) {
// Gets triggered when there was an error sending the files.
// Maybe show form again, and notify user of error
});
}
}
有问题的HTML是:
<h1>Ažuriranje filijale za firmu: {{ $firma->naziv }}</h1>
<!-- if there are creation errors, they will show here -->
{{ HTML::ul($errors->all()) }}
{!! Form::model($filijala, [
'method' => 'PUT',
'action' => array('FilijalaAdminController@update', $firma->id, $filijala->id),
'id' => 'edit_filijala_form'
]) !!}
<div class="form-group">
{!! Form::label('Naziv firme', 'Naziv firme') !!}
{!! Form::text('naziv_firme', $firma->naziv, array('class' => 'form-control', 'readonly')) !!}
</div>
<div class="form-group">
{!! Form::hidden('filijala_hidden', $filijala->id, array('class' => 'form-control', 'id' => 'filijala_hidden')) !!}
</div>
<div class="form-group">
{!! Form::label('Adresa filijale', 'Adresa filijale') !!}
{!! Form::text('adresa', Input::old('adresa'), array('class' => 'form-control')) !!}
</div>
<div class="form-group">
{!! Form::label('Telefon', 'Telefon') !!}
{!! Form::text('telefon', Input::old('telefon'), array('class' => 'form-control')) !!}
</div>
<div class="form-group">
{!! Form::label('Email', 'Email') !!}
{!! Form::text('email', Input::old('email'), array('class' => 'form-control')) !!}
</div>
<div class="form-group">
{!! Form::label('Uklanjanje slika', 'Uklanjanje slika') !!}
<div class="row">
@foreach($slike as $slika)
<div class="col-lg-3 col-md-4 col-xs-6 thumb">
<a <?php echo 'href="#imageOverlay' . $slika->id . '"'; ?> data-toggle="drop-panel" class="thumbnail">
<img <?php echo 'id="image' . $slika->id . '"'; ?> class="img-responsive" src="{{ $slika->url }}">
</a>
<div <?php echo 'id="imageOverlay' . $slika->id . '"'; ?> class="cap-overlay show">
<div class="content">
<a href="javascript:obrisiSliku('{{ $slika->id }}', 'filijale')" class="button small"><h5>Obriši sliku</h5></a>
</div>
</div>
</div>
@endforeach
</div>
</div>
<div class="form-group">
{!! $slike->render() !!}
</div>
<div class="form-group">
{!! Form::label('Dodavanje slika', 'Dodavanje slika') !!}
<div class="dropzone" id="edit_filijala_dropzone">
</div>
</div>
<div class="form-group">
{!! Form::submit('Ažuriraj filijalu', array('id' => 'edit_filijala_submit')) !!}
</div>
{!! Form::close() !!}
服务器是CentOS linux机器。
编辑:
生成的HTML:
<html><head>
<title>Ažuriranje filijale</title>
<meta name="csrf-token" content="9dglsQuYuxZEcbko7sCwj8PMzQgbwFlpnfwlT5Gr">
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css">
<link rel="stylesheet" href="/css/dropzone.css">
<link rel="stylesheet" href="/css/thumbnail-gallery.css">
<style>
.cap-overlay .button { margin-top:10px}
.cap-overlay{width: 100%; color:#fff; background: rgba(0, 0, 0, 0.43);left:0;padding:12px; line-height: 1.4em;font-size:14px}
.cap-overlay h5 {color:#fff;}
a[data-toggle="drop-panel"] {display: block;}
</style>
<style type="text/css"></style></head>
<body>
<div class="container">
<nav class="navbar navbar-inverse">
<ul class="nav navbar-nav">
<li><a href="http://5.189.145.111/admin_firme/2">Sve filijale za firmu</a></li>
<li><a href="http://5.189.145.111/admin_firme/2/filijale/create">Nova filijala</a>
</li></ul>
</nav>
<h1>Ažuriranje filijale za firmu: Kaymo PROPO LIST d.o.o </h1>
<!-- if there are creation errors, they will show here -->
<form method="POST" action="http://5.189.145.111/admin_firme/2/filijale/8" accept-charset="UTF-8" id="edit_filijala_form"><input name="_method" type="hidden" value="PUT"><input name="_token" type="hidden" value="9dglsQuYuxZEcbko7sCwj8PMzQgbwFlpnfwlT5Gr">
<div class="form-group">
<label for="Naziv firme">Naziv firme</label>
<input class="form-control" readonly="readonly" name="naziv_firme" type="text" value="Company X ">
</div>
<div class="form-group">
<input class="form-control" id="filijala_hidden" name="filijala_hidden" type="hidden" value="8">
</div>
<div class="form-group">
<label for="Adresa filijale">Adresa filijale</label>
<input class="form-control" name="adresa" type="text" value="dsasad ">
</div>
<div class="form-group">
<label for="Telefon">Telefon</label>
<input class="form-control" name="telefon" type="text" value="033 256 987 ">
</div>
<div class="form-group">
<label for="Email">Email</label>
<input class="form-control" name="email" type="text" value="eldar32@gmail.com ">
</div>
<div class="form-group">
<label for="Uklanjanje slika">Uklanjanje slika</label>
<div class="row">
<div class="col-lg-3 col-md-4 col-xs-6 thumb">
<div class="drop-panel" style="position: relative; overflow: hidden; display: block; padding: 2px;"><a href="#imageOverlay22" data-toggle="drop-panel" class="thumbnail">
<img id="image22" class="img-responsive" src="\image\filijale\192971848455d4d775787cb4.79487595.jpg">
</a><div id="imageOverlay22" class="cap-overlay show" style="display: block; width: 345px; height: 321px; position: absolute; z-index: 3; overflow: hidden; left: 0px; top: -321px;">
<div class="content">
<a href="javascript:obrisiSliku('22', 'filijale')" class="button small"><h5>Obriši sliku</h5></a>
</div>
</div></div>
</div>
</div>
</div>
<div class="form-group">
</div>
<div class="form-group">
<label for="Dodavanje slika">Dodavanje slika</label>
<div class="dropzone" id="edit_filijala_dropzone">
</div>
</div>
<div class="form-group">
<input id="edit_filijala_submit" type="submit" value="Ažuriraj filijalu">
</div>
</form>
</div>
<script src="/js/jquery.js"></script>
<script src="/js/jquery.hcaptions.js"></script>
<script src="/js/slike_akcije.js"></script>
<script src="/js/dropzone.js"></script>
<script src="/js/dropzone_options.js"></script>
<script>
$(window).load(function () {
$('[data-toggle=drop-panel]').hcaptions();
});
</script>
</body></html>
答案 0 :(得分:3)
在设置选项之前添加此行
Dropzone.autoDiscover = false;