Единственное, что я вижу, что это не сработает, это селектор для отправки вызова.
у вас есть:
$('form .upload_form').submit();
$('form .upload_form').remove();
что должно быть:
$('form.upload_form').submit().remove();
Также из этой строки в вашем коде:
$('#upload_form').html(upload_form);
Я бы сделал вывод, что у вас есть контейнер с идентификатором upload_form
, но ваш iframe также имеет такой же идентификатор. Я предлагаю вам изменить один из идентификаторов, в противном случае вы можете получить затруднительное поведение.
Подводя итог, мои изменения будут выглядеть так:
HTML:
<div id="uploadFormContainer"></div>
<iframe id="upload_form"></iframe>
Javascript:
var upload_form = ... /* your form string unchanged - excluded for brevity */
$('#uploadFormContainer').html(upload_form);
alert(upload_form);
$('form.upload_form').submit().remove();