Еще один поздний ответ. На твоем месте я бы начал с таких вещей, как:
$('form').submit(function(e) {
в нечто вроде:
$('form').bind('submit', function(e) {
и все в таком духе:
$('form').submit();
в
$('form').trigger('submit');
Также я бы переместил все эти привязки из $ (form) .submit.
uploader.bind('UploadProgress', function() {
if (uploader.total.uploaded == uploader.files.length)
$('form').submit();
});
Просто ради простоты и отладки.
К сожалению, до сих пор не знаю, что не так с вашим сценарием. Может быть, вам не хватает:
uploader.init();
Может быть:
if (uploader.total.uploaded == 0) {
не запускается.
Тем не менее, некоторые console.log после каждой строки должны помочь. :)