0

今、私はajaxなしでアップロードするためにこのコードを使用しています

@cherrypy.expose
def upload(self, file):
    uload_path = pm.get_package_download_dir()
    file_name = 'some.file'

    if not isdir(uload_path):
        try:
            makedirs(uload_path)
        except ValueError:
            raise cherrypy.HTTPError(400, 'SOME_ERROR')        

    uload_path = uload_path + os.path.sep + file_name                

    size = 0
    all_data = ''
    while True:
        data = file.file.read(8192)
        all_data += data
        if not data:
            break
        size += len(data)

    try:
        saved_file=open(uload_path, 'wb') 
        saved_file.write(all_data) 
        saved_file.close()
    except ValueError:
        raise cherrypy.HTTPError(400, 'SOME ERROR')

    print 'OK'

しかし、CherrypyとJqueryを使用したajaxファイルのアップロードの例は見つかりません。助けてください!

4

1 に答える 1

0

最後に、iframeを介してこの問題を解決しました

<iframe id="iframe" name="iframe" style="display:none;"></iframe>
<form id="upload" action="./upload" enctype="multipart/form-data" method="post" target="iframe">
  <input type="file" id="file" name="file">
  <input type="submit">
</form>      

$('#iframe').load(function(){
    console.log($(this).contents().find('#uploaded').val());
});

それでも、アップロードの進行状況バーを取得できません。助言がありますか?

于 2012-10-18T11:29:41.433 に答える