在我的页面中,我有一个表单可以在提供api,upload.im的外部服务上传照片,而且我需要获取图像上传的URL。我真的无法得到这个工作...将多部分表单发布到外部URL php
此api的文档页面是here。
我添加了一个形式到我的PHP页面:
<form enctype="multipart/form-data" name="UploadForm" id="UploadForm" action="http://uploads.im/api" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
<input type="file" name="upload" id="upload" />
<input type="hidden" name="resize_width" id="resize_width" value="" />
<input type="hidden" name="thumb_width" id="thumb_width" value="250" />
<input type="hidden" name="format" id="format" value="xml" />
<input type="submit" id="Submit" name="Submit" />
</form>
我还试图用这个jQuery代码与所选择的图像提交表单:
$(document).ready(function() {
$('#UploadForm').on('submit', function(e) {
e.preventDefault();
var data = new FormData(jQuery('UploadForm')[0]);
jQuery.ajax({
url: 'http://uploads.im/api',
data: data,
cache: false,
contentType: false,
processData: false,
type: 'POST',
success: function(data){
console.log(data);
}
});
});
});
有了这个代码,我得到控制台中的错误: screen.png http://i68.tinypic.com/zmnyq8.png 这是来自API的错误代码;这意味着代码有效,但表单提交的方式是错误的。哪里有问题?
谢谢!
形式是好的,问题是在js代码,我试图修复它。 – esJuanMa
不应该'e.preventDefault();'最后? – rybo111
此外,为什么你使用jQuery('UploadForm')[0]'而不是'$(this)[0]',和'jQuery.ajax'而不是'$ .ajax'? – rybo111