图像上传后 JQuery 自动提交表单 - 不提交按钮
Posted
技术标签:
【中文标题】图像上传后 JQuery 自动提交表单 - 不提交按钮【英文标题】:JQuery auto-submit form after image upload - Not Submit button 【发布时间】:2019-09-24 22:48:06 【问题描述】:我想在图片上传后自动提交表单。该表单正在同一页面上处理。所以我没有 if(isset($_POST["submit"]))
<div class="container">
<h1>jQuery Image Upload
<small>with preview</small>
</h1>
<div class="avatar-upload">
<form id="formImageUpload" action="#" method="post" enctype="multipart/form-data">
<div class="avatar-edit">
<input type='file' id="imageUpload" name="imageUpload" accept=".png, .jpg, .jpeg" onchange="this.form.submit()" />
<label for="imageUpload"></label>
</div>
</form>
<div class="avatar-preview">
<div id="imagePreview" style="background-image: url(http://i.pravatar.cc/500?img=7);" onchange="this.form.submit()" >
</div>
</div>
</div>
</div>
jquery 文件是:
function readURL(input)
if (input.files && input.files[0])
var reader = new FileReader();
reader.onload = function(e)
$('#imagePreview').css('background-image', 'url('+e.target.result +')');
$('#imagePreview').hide();
$('#imagePreview').fadeIn(650);
$("#formImageUpload" ).submit();
reader.readAsDataURL(input.files[0]);
$("#imageUpload").change(function()
readURL(this);
);
【问题讨论】:
我认为打电话给onchange="readURL(this)"
对你有用。
能否请您从操作中删除#:
onchange="readURL(this)" 做到了
【参考方案1】:
所以,你的答案是这样的:
<div class="container">
<h1>jQuery Image Upload <small>with preview</small></h1>
<div class="avatar-upload">
<form id="formImageUpload" action="#" method="post" enctype="multipart/form-data">
<div class="avatar-edit">
<input type='file' id="imageUpload" name="imageUpload" accept=".png, .jpg, .jpeg" onchange="readURL(this)" />
<label for="imageUpload"></label>
</div>
</form>
<div class="avatar-preview">
<div id="imagePreview" style="background-image: url(http://i.pravatar.cc/500?img=7);" ></div>
</div>
</div>
</div>
JS:
function readURL(input)
if (input.files && input.files[0])
var reader = new FileReader();
reader.onload = function(e)
$('#imagePreview').css('background-image', 'url('+e.target.result +')');
$('#imagePreview').hide();
$('#imagePreview').fadeIn(650);
$("#formImageUpload" ).submit();
reader.readAsDataURL(input.files[0]);
【讨论】:
以上是关于图像上传后 JQuery 自动提交表单 - 不提交按钮的主要内容,如果未能解决你的问题,请参考以下文章
jquery ajax 提交表单,serialize()序列化表单数据,但其对type=file的input也就是上传不支持,怎么办?