[英]Jquery hide and delete image after append and upload
我正在尝试隐藏和删除图像,这是上传后的 append 代码
Append代码
$('#uploaded_images').append('<div class="container uploaded_image"> <input type="text" value="'+data['result']+'" name="uploaded_image_name[]" id="uploaded_image_name" hidden> <img class="img-thumbnail" width="200" height="200" src="server/uploads/'+data['result']+'" /> <a id="delete" href="index.php?image='+data['result']+'" class="btn btn-danger">'+data['result']+'</a> </div>');
隐藏代码
$('body').on('click', '#delete', function() {
// code here
$(this).hide();
});
出于某种原因$(this).hide();
它不工作
我还想向delete.php?image=+data['result']+发送 GET 请求以从文件中删除图像。
有人有解决方案吗?
因为您的代码只是删除按钮是 hide.first 找到父 div 并在此父 div 隐藏后这是正常工作。 替换这个
$(this).hide();
至
$(this).parent('.uploaded_image').hide();
这是隐藏/删除的工作小提琴: https://jsfiddle.net/usmanmunir/wj2rLhus/5/
$('body').on('click', '#delete', function() {
$(this).parent().remove();
});
要从服务器上传目录中删除文件,您可以发送delete.php?image=fileName
在 deele.php
$FileName = $_GET['image']
通过使用 PHP 中的 function 内爆来根据需要存储文件名
$FileName = array('image1', 'image2', 'image3');
$Dash_Added = implode("-", $array);
echo $Dash_Added;
如果那是您想要的,unlink() 将允许您从上传目录中删除文件。
unlink('server/uploads'.$FileName)
上传文件并将它们存储到数组
<input type="file" onchange="SelectFiles(this)" multiple/>
<input type="submit" onclick="UploadFiles(this)" value="Upload"/>
<script>
var allFileName = []
function SelectFiles(_this) {
for (var i = 0; i < _this.files.length; i++) {
allFileName.push(_this.files[i]);
}
}
function UploadFiles() {
$.ajax({
url:'haha.php',
dataType:'json',
type:'POST',
cache:true,
data: {
file_names: allFileName
},
success: function(response) {
}
})
}
</script>
希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.