У меня есть форма в iframe, который является в диалоговом окне UI jQuery. Форма содержит входной тип файла. Диалоговое окно UI jQuery содержит кнопку Upload. Когда эта кнопка нажата, я хотел бы программно назвать отправлять метод. Мой вопрос состоит в том, как я мог выбрать форму, которая находится в iframe использование jQuery. Следующий код должен разъяснить изображение:
<div id="upload_file_picker_dlg" title="Upload file">
<iframe id="upload_file_iframe" src="/frame_src_url" frameborder=0 width=100% scrolling=no></iframe>
</div>
frame_src_url содержит:
<form action="/UploadTaxTable" enctype="multipart/form-data" method="post" id="upload-form">
<p>Select a file to be uploaded:</p>
<p>
<input type="file" name="datafile" size="60">
</p>
jQueryUI код JavaScript диалогового окна:
$('#upload_file_picker_dlg').dialog({
...
buttons: {
'Close': function() {
$(this).dialog('close');
},
'Upload': function() {
$('#upload-form').submit(); //question is related to this line
$(this).dialog('close');
}
},
....
});
От отрывка кода JavaScript выше, как я могу выбрать форму с идентификационной формой загрузки, которая находится в iframe, идентификатор которого является upload_file_iframe?
Получить доступ к элементу внутри iframe сложно. Вы должны использовать следующий синтаксис:
$('#iframeID').contents().find('#upload-form').submit();
где iframeID - это, очевидно, идентификатор, который вы дали iframe.
Надеюсь, что это правильно!
Сверху у меня в голове I ' d скажем, вам, возможно, придется добавить логику в файл, из которого взят источник iframe.
Ответ:
$('#upload_file_iframe').contents().find('#upload-form').submit();
, который я узнал из http://simple.procoding.net/2008/03/21/how-to-access-iframe-in-jquery/