我找不到任何搜索的答案。
我有一个简单的按钮,在HTML中使用锚标记:
<a id="beginUpload" href='/upload' class='button-style'>Upload</a>
数据是从HTML上的输入元素生成的,ID为'file'。
我的jQuery方法如下:
$("#beginUpload").click(function () {
var data = {
mimeType : document.getElementById('file').files[0].type,
fileSize : document.getElementById('file').files[0].size
};
console.log(data);
$.ajax({
type: 'POST',
url: '/post_asset/',
data: data,
dataType: 'json',
success: function (result) {
console.log(result);
},
error: function (error) {
console.log(error);
}
});
});
当我运行click函数的内容时(在第一次输入文件之后) - 它返回我的预期响应,如下所示:
Object {success: true, upload_url: "http://my_url", id: 12, mime_type: "audio/mp3", size: "52981888"}
但是,当我使用按钮运行此代码时,我收到一个错误,其中包含一个空的errorResponse文本,如下所示:
Object {readyState: 0, responseText: "", status: 0, statusText: "error"}
知道我做错了吗?
答案 0 :(得分:1)
尝试使用a
阻止链接/upload
的默认行为(重定向到e.preventDefault()
):
$("#beginUpload").click(function (e) {
e.preventDefault();
//...Your code here
}
希望这有帮助。
答案 1 :(得分:1)
单击超链接时,需要使用以下内容阻止发布:
../GOPATH/src/MYPROJECT
或者您需要从onclick处理程序返回false。