我在iframe中有一个表单,它位于jQuery UI对话框中。表单包含文件输入类型。 jQuery UI对话框包含一个Upload按钮。单击此按钮时,我想以编程方式调用submit方法。我的问题是如何使用jQuery选择iframe中的表单。以下代码应阐明图片:
<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代码段中,如何选择ID为 upload_file_iframe 的iframe中ID为 upload-form 的表单?
答案 0 :(得分:16)
访问iframe中的元素很棘手。 您应该使用以下语法:
$('#iframeID').contents().find('#upload-form').submit();
其中'iframeID'显然是您为iframe提供的ID。
希望它是正确的!
答案 1 :(得分:2)
答案是:
$('#upload_file_iframe').contents().find('#upload-form').submit();
我从http://simple.procoding.net/2008/03/21/how-to-access-iframe-in-jquery/
学到的答案 2 :(得分:0)
我不得不说你可能需要将逻辑添加到iframe源来自的文件中。