我的代码有问题,一个按钮从 jQuery UI 对话框中调用此 ajax 请求
myaudioupload = $.ajax({
url: "some url",
type: "POST",
data: formdata,
processData: false,
contentType: false,
success: function (data) {
var data = jQuery.parseJSON(data);
console.log('json parsed');
if(data.status==1){
console.log('status ok');
}
else{
console.log('status not ok');
}
}
});
如果用户想要取消请求,用户关闭对话框,然后执行以下几行:
close: function(event, ui) {
if(myaudioupload.abort()) {
console.log('aborted');
$('#uploadaudioform')[0].reset();
}}
只有在数据上传时才可以正常工作,而不是在上传成功之后或触发上传之前。在这些情况下,会显示此消息
Uncaught TypeError: Cannot call method 'abort' of undefined
我什至在中止时尝试过这些方法:
if(myaudioupload!=='undefined' && myaudioupload.abort=='function'){
myaudioupload.abort();
console.log('aborted');
$('#uploadaudioform')[0].reset();
}
但这也行不通;出现同样的错误。
所以请帮助我应该如何做或者我的代码是否有问题。 谢谢。
最佳答案
改变
myaudioupload!=='未定义'
到
typeof myaudioupload !== 'undefined'
关于javascript - 未捕获的类型错误 : Cannot read property 'abort' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12312855/