使用ajax上传文件在firefox上无法正常工作

使用ajax上传文件在firefox上无法正常工作,ajax,yii2,Ajax,Yii2,我有下面的代码通过ajax将文件上传到服务器,它在IE 10和chrome上似乎可以正常工作,但在firefox浏览器上不工作,有没有办法解决这个问题?下面是所有主要浏览器上的代码和输出 $('input.upload').on('change', function(event){ files = event.target.files[0]; uploadFiles(event); }); function uploadFiles(even

我有下面的代码通过ajax将文件上传到服务器,它在IE 10和chrome上似乎可以正常工作,但在firefox浏览器上不工作,有没有办法解决这个问题?下面是所有主要浏览器上的代码和输出

$('input.upload').on('change', function(event){
         files = event.target.files[0];
         uploadFiles(event);
          });
function uploadFiles(event)
{
      event.stopPropagation(); 
    event.preventDefault(); 
            var form_data = new FormData();                  
              form_data.append('file', files);
              //console.log(form_data);

    $.ajax({
        url: 'uploads.php',
        type: 'POST',
        data: form_data,
        cache: false,
        dataType: 'text',
        processData: false,
        contentType: false, //
        success: function(data, textStatus, jqXHR)
        {
            if(typeof data.error === 'undefined')
            {
                console.log(data);
            }
            else
            {
                console.log('ERRORS: ' + data.error);
            }
        },
        error: function(jqXHR, textStatus, errorThrown)
        {
            console.log('ERRORS: ' + textStatus);
        }
    });
} 
在我的控制器中,我有以下代码:

public function actionUpload()
{
$upload = new Upload();
$model = new Photos();
$fileName = 'file';


if (isset($_FILES[$fileName])) {
    $upload->image =     \yii\web\UploadedFile::getInstanceByName($fileName);
    $file = $upload->image;
            if ($upload->upload()) {
        //Now save file data to database
        $model->photo1 = $upload->fileDirectory;

        if($model->save()){
           echo \yii\helpers\Json::encode($file); 
        }

    }
}

return false;
}
在GoogleChrome和IE浏览器上,ajax中成功方法的console.log(数据)输出以下正确信息

{"name":"mmexport1370251431731.jpg","tempName":"/tmp/php0UCw4B","type":"image/jpeg","size":36185,"error":0}
在firefox浏览器上,ajax中成功方法的console.log(data)输出以下内容。只有文件名为return,其他文件属性返回空字符串,错误返回1

{"name":"mmexport1370251431731.jpg","tempName":"","type":"","size":0,"error":1}