在div中加载新页面

时间:2013-02-14 07:44:01

标签: php javascript

我有这个名为“pachete”的div,它生成图像链接(点击一个图像和数据库加载的相应地址),它可以发送到正确的页面,但我想要的是将该页面加载到页面中我在(在图像链接的正下方)进入new_page div,而不是重定向到它。类“poza_efect”是一个简单的不透明效果。我有一个JavaScript函数但由于某种原因它不起作用。

<script>
    $('.stil_link_img').click(function () {
        $('#new_page').load($(this).attr('href'));

        return false;
    });
</script>

<div id="pachete">
    <?php $result=mysql_query( "SELECT* FROM imagini"); while($data=mysql_fetch_row($result)){ if( ($data[3]==1)&&($data[2]==2) ){ ?>
    <div class="stil_link_img">
        <a href="<?php echo $data[4];?>" class="poza_efect">
            <img src="upload/<?php echo $data[1];?>">
        </a>
    </div>
    <?php } }?>
</div>

<div id="new_page">//some content which should be replaced with my loaded page</div>

2 个答案:

答案 0 :(得分:2)

在你的Javascript函数中,引用$(this)不是指向A元素,而是指向容器DIV。试着这样做:

    $('.stil_link_img a').click(function() ...

并且,将它包装到$(document).ready(function(){....});处理程序,以确保元素完全加载。

答案 1 :(得分:2)

在加载元素之前注册了stil_link_img click事件,因此永远不会附加事件。使用

  • $(".stil_link_img").live(..)
  • 在完全加载页面后附加事件
  • 在循环后移动.click

此外,您应该将click事件注册到a-tag而不是div(或者如果您想要,请务必设置一些可点击的背景..)