在iframe完成加载后加载div

时间:2014-01-17 11:03:48

标签: jquery ajax iframe

我想在iframe完成加载后在pictures.php的div中加载main ...

这是我的index.php:

<html>
<head>
<script src='jquery.min.js' ></script>
<script src='upload.js' ></script>
</head>
<body>

<div id='main' ><?php include("pictures.php");  ?></div>

<form action='upload.php' target='tar_wp' enctype='multipart/form-data' method='POST' >
<iframe src='' name='tar_wp' width='0' height='0' onload='tar_wp()' ></iframe>

<input type='file' name='pic' id='pic' />
<button type='submit' id='submit' >submit</button>

</form>

</body>
</html>

和我的pictures.php:

<?php

$img = mysql_query("SELECT * FROM images");
while($rows_img = mysql_fetch_assoc($img)){

    $i_img = $rows_img['image_path'];

}

echo "<img src='$i_img' width='200px' height='200px' />";

?>

和upload.php工作得很完美,它插入了我需要的图像,只是加载不起作用....

我使用iframe作为目标,以避免加载整个页面而只加载ID为main的div ...

这是我的upload.js:

$(document).ready(function(){

    $("#submit").click(function{

        var pic = $("#pic").val();

        if(pic == ""){

            $("#pic").focus();

        }
        else{

             $.ajax({
             type: 'post',
             success: function () {

                    $("#main").load("index.php"); // load div to see changes after uploading

                  }
             });

        }

    });

});

不幸的是,它没有加载div来查看新上传。我必须刷新整个页面才能看到新上传的内容。我还在iframe onload事件上尝试了此代码:

function tar_wp(){

    $("#main",window.parent.document).load("pictures.php");

}

非常感谢任何想法,提前致谢....

BTW我的主要目标是在iframe完成加载后,在id为main的div中加载pictures.php ...

1 个答案:

答案 0 :(得分:0)

关于成功功能,您可以像这样加载页面

success: function () {
   $('#main').load('picture.php');
}