所以我的网站上有几个模态窗口。我通常使用jquery和ajax在模态窗口中完成某些操作并更新父页面上的div。
我的问题是我上传文件所以我不得不使用我从未做过的iframe,我使用的是javascript,而不是我从未做过的jquery,所以我有点失落并且正在寻找一些方向。
我正在尝试从我的模态窗口更新父页面上的div。在模态窗口中,我有一个以iframe为目标的表单,操作指向一个单独的php页面。总体问题是如何在表单上传文件后将更新的$ attachment_table发送到父div?我在尝试:
Modal_window.php - 上面有一个上传文件的表单。
<?php
$attachment_table = '';
while (($row73 = $answer17->fetch(PDO::FETCH_ASSOC)) !== false) {
$attachment_table .= '<tr>';
$attachment_table .= "<td><input name='checkbox[]' type='checkbox' id='checkbox[]' value='${row73[imageven_id]}'></td>";
$attachment_table .= "<td><a href='../php/viewimages.php?id=${row73[image_id]}')'>${row73[upload_name]}</a></td>";
$attachment_table .= "<td>${row73[image_category]}</td>";
$attachment_table .= "<td>${row73[upload_date]}</td>";
$attachment_table .= '</tr>';
};
?>
<script type="text/javascript">
function stopUpload(success) {
var result = '';
if (success == 1) {
window.top.document.getElementById('attachment_table').innerHTML = <?php echo $attachment_table; ?>;
document.getElementById('result').innerHTML = '<div class="msg-status" style="width:492px;">The file was uploaded successfully!<\/div><br/>';
} else if (success == 0) {
document.getElementById('result').innerHTML = '<div class="msg-error" style="width:492px;">There was an error during file upload!<\/div><br/>';
} else if (success == 2) {
document.getElementById('result').innerHTML = '<div class="msg-error" style="width:492px;">ERROR! Please upload a document with the following file types....<br/><br/>txt, doc, xls, rtf, ppt, pdf, jpg, jpeg, gif, png, xlsx, docx, png, pps, ppsx, ppt<\/div><br/>';
}
document.getElementById('f1_upload_process').style.visibility = 'hidden';
return true;
}
</script>
modal_window_process.php - 处理数据库代码并发送$ result
的响应<script language="javascript" type="text/javascript">
window.top.window.stopUpload(<?php echo $result;?>);
</script>
有人能指出我正确的方向吗?我无法在网上找到关于如何做到这一点的任何内容,我是一个自学成才的菜鸟。 THX。
答案 0 :(得分:0)
如果iframe父级具有此功能
<script type='text/javascript'>
function onUploaderReady() {
alert('upload ready');
}
</script>
你可以让modal_window_process.php脚本通过返回这样的响应来调用 onUploaderReady 函数
<html>
<head>
<script type='text/javascript'>
parent.onUploaderReady();
</script>
</head>
</html>