jQuery PHP iFrame файл загрузить возвращенные данные ошибка

Я использую jQuery + PHP для загрузки файлов через скрытый iFrame.
У меня это работает, и я работаю с загрузкой нескольких файлов, а также.

Резюме:
У меня есть ГЛАВНЫЙ / родитель, который пользователи будут использовать для отправки обычных данных формы с помощью ..
У меня есть вторая форма под этой ОСНОВНОЙ формой, которая используется только для загрузки любых файлов.

Когда пользователь загружает несколько изображений … Я возвращаю некоторые данные (либо список ошибок .., либо список успешно загруженных файлов обратно на страницу) .. поэтому, когда отправлена ​​форма MAIN / родительская, эти вставленные данные будут идти вместе с данные основной формы (сохраняются в базе данных)

Вот моя проблема … в то время как я могу получить некоторую простую обратную связь, добавленную на страницу (используя javascript для <feedback></feedback> элемент .. Я НЕ могу вставить какие-либо новые элементы в ГЛАВНУЮ форму (как скрытые поля) .. Я думаю, что у меня либо ошибка синтаксиса добавления / поиска jQuery, либо проблемы с маршрутизацией / областью действия.

Чтобы представить структуру документа в перспективе:

Структура: (немного упростилась)

<div id="newMessage" style="width:100%;">

<!-- MAIN/Parent form -->
<form id="newMessage_form" name="newMessage_form" method="post" action="<?= $_SERVER['PHP_SELF']?>?mode=submit" onsubmit="return chkFrm(this)">

<table id="newMessage_table" width="100%" cellspacing="0" cellpadding="4" style="border:0px solid; border-color:#ff0000;">
<tr>
<td valign="top">* Item Name:<br>
</td>
</tr>

<tr>
<td valign="top">
* Year:<br>
* Month:<br>
* Date:<br>
</td>
</tr>

<tr>
<td valign="top">* Message:<br>
</td>
</tr></table>
<div style="text-align:center; padding-bottom:20px;padding-top:10px;">
<input type="Submit" name="submit_btn" id="submit_btn" value="Submit" style="width:100px;">
</div>

</form>

<div id="uploadContainer" style="margin-top:-40px;">

<div id="feedback"></div>

<div id="hidden_test"></div><!-- added to test jQuery return since I couldnt successfully target the parent form -->

<iframe name="upload_iframe" src="" style="display:none;"></iframe>

<!-- file upload submission form -->
<form method="post" enctype="multipart/form-data" action="handler.php" target="upload_iframe">
<table id="uploads_table" width="100%" cellspacing="0" cellpadding="4" style="border:0px solid; border-color:#ff0000;">
<tr>
<td id="uploads">
<!-- hidden until at least 1 file is added -->
<div id="moreUploads" style="display:none; margin:5px 0 10px 0;">
<a href="javascript:void(0);" id="attachMore">Add another file</a>
</div>

<div id="uploadContainer">
<input type="file" id="file1" name="file[]"><br><br>
</div>
<!-- new/dynamically created browse/select buttons go here -->
<div id="moreImageUpload"></div>
<div id="upload_btn" style="margin:10px 0 0 0;">
<input type="Submit" name="upload_btn" id="upload_btn" value="Upload All" style="width:100px;">
</div>
</td>
</tr>
</table>
</form>
</div>

</div>

В моем скрипте обработчика загрузки файла php .. (handler.php) все работает, за исключением того, что я пытался вернуться назад и в элементы в MAIN / родительскую форму (как скрытые поля ввода)

echo '<script>
//works general 'feedback' node
parent.document.getElementById("feedback").innerHTML="' . addslashes($name) . $returnerror .'";

//doesnt work
$(this).parent("#hidden_test").append("<input type=\"file\" />");

//also not working
$(this).parent().parent("#newMessage_form").append("<input type=\"file\" />");

</script>';

Может ли кто-нибудь помочь мне с моей проблемой возвращения / нацеливания jQuery?

Попытка добавить к этому элементу: #hidden_test был просто тест. (чтобы увидеть, если у меня была проблема пути)

Мне действительно нужно добавить новые (динамические) элементы в: #newMessage_form

Обновление: когда я пытался просмотреть исходный код с помощью FireBug. (чтобы увидеть, где я получаю свои инъецированные элементы в DOM где-нибудь ..

Я заметил ошибку:

ReferenceError: $ is not defined
$(this).parent("#hidden_test").append("<input type=\"file\" />");

Но другой мой jQuery работает нормально (в основном файле) ..

а обычный старый javascript тоже работает нормально? Нужно ли включать jQuery lib в мой файл / скрипт hanlder.php или что-то в этом роде?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]