TypeError 无法设置 属性 'size of' undefined
TypeError cannot set property 'size of' undefined
试图在用户上传文件时获取文件的大小。
当用户点击浏览按钮上传文件时,
而是点击取消按钮。
文件大小类型抛出未定义的错误。
我尝试使用 typeof 来测试文件大小的条件是
未定义但它不起作用。需要帮助来捕获错误。
$('#fileupload-image').change(function() {
$('#select_file').hide();
$('#upload_image_button').slideDown('fast');
var filename = $(this).val();
if(typeof this.files[0].size == 'undefined')
{
this.files[0].size = '';
}
else
{
var filesize = this.files[0].size;
}
使用 this.files.length > 0 检查而不是检查它是否未定义。此外,如果您要检查它是否未定义,您也不想使用单引号。
首先,我不认为你真的想要设置 this.files[0].size = '';
。
这里有一种可能性,使用 try/catch 来忘记类型检查:
var filesize = '';
try {
filesize = this.files[0].size;
}
catch {}
另一种可能性:
var filesize = (this.files.length && this.files[0].size) || '';
试图在用户上传文件时获取文件的大小。 当用户点击浏览按钮上传文件时, 而是点击取消按钮。 文件大小类型抛出未定义的错误。
我尝试使用 typeof 来测试文件大小的条件是 未定义但它不起作用。需要帮助来捕获错误。
$('#fileupload-image').change(function() {
$('#select_file').hide();
$('#upload_image_button').slideDown('fast');
var filename = $(this).val();
if(typeof this.files[0].size == 'undefined')
{
this.files[0].size = '';
}
else
{
var filesize = this.files[0].size;
}
使用 this.files.length > 0 检查而不是检查它是否未定义。此外,如果您要检查它是否未定义,您也不想使用单引号。
首先,我不认为你真的想要设置 this.files[0].size = '';
。
这里有一种可能性,使用 try/catch 来忘记类型检查:
var filesize = '';
try {
filesize = this.files[0].size;
}
catch {}
另一种可能性:
var filesize = (this.files.length && this.files[0].size) || '';