【发布时间】:2015-09-02 08:10:06
【问题描述】:
我需要将多张图片上传到服务器,但在上传之前,它们必须在客户端进行压缩而不会造成质量损失(使用 jQuery)。
有什么方法可以获取每张图片的宽高吗?
<script type="text/javascript">
$(document).ready(function() {
$("#Upload").click(function() {
var formData = new FormData();
var image = new Image();
var totalFiles = document.getElementById("fileUpload").files.length;
for (var i = 0; i < totalFiles; i++) {
var file = document.getElementById("fileUpload").files[i];
formData.append("fileUpload", file);
}
$.ajax({
type: "POST",
url: '/Ajaximage/Upload',
data: formData,
dataType: 'json',
contentType: false,
processData: false,
success: function(response) {
//alert('succes!!');
},
error: function(error) {
//alert("Failed");
}
});
});
});
</script>
【问题讨论】:
-
上传图片的
ajax请求不是驻留在服务器上吗?用户要么在自己的计算机上进行无损压缩,要么让上传脚本来做。 -
请不要在标题中添加库或语言名称。它们不是必需的,因为它们是标签列表的一部分。此外,在发布之前更好地格式化代码(如适当的缩进,删除不必要的换行符等)。更好的格式化代码有助于提高可读性。我对内容进行了一些改写,以更好地解释您的问题。谈到代码,您是否尝试过任何特定于压缩图像的方法?它有没有给你任何错误?如果是,请附上相关的错误信息。
标签: jquery ajax razor model-view-controller