Я использую скрипт Python для загрузки файлов на сервер. Форма загрузки обслуживается jQuery.form
HTML:
<form id="form_upload" enctype="multipart/form-data" action="py/uploader.py" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="100000" />
<input name="uploadedfile" type="file" />
<input type="submit" value="Upload" />
</form>
В конце процедуры загрузки я хочу, чтобы uploader.py
вернул мне некоторую информацию о загруженном файле. Я возвращаю эту информацию в формате xml и позже хочу интерпретировать ее с помощью jQuery.
uploader.py:
# ...
# serve the file
return "<info size=\"%s\"></info>" % size
Тогда jQuery должен выглядеть так:
JQuery:
$("#form_upload").submit( function() {
var options = {
dataType: "xml",
success: function(xml_response) { /*xml_response is the xml returned by uploader.py*/
var size = $(xml_response).find("info").attr("size");
// display size
// ...
}
}
$(this).ajaxSubmit(options);
return false;
});
Теперь проблема в том, что xml_response не распознается как мой xml: вместо созданной мной строки я получаю
<pre style="word-wrap: break-word; white-space: pre-wrap;"> here my xml, escaped </pre>
Если enctype
в form
было text/xml
, то функция success
получает правильный объект xml, но загрузка файла невозможна. Как это решить?