0

我是 AJAX 的新手,我有一个加载 table.php 的链接。然后它将代码写入 index.php。在该代码中,我有另一个链接来显示 info.php。是否有可能做到这一点?

<!--This is index.php-->
<div id="link"><a href="info">my Info</a></div><!--it works here-->
<div id="link"><a href= "table">My Table</a></div>
<div id="table"></div>
<div id="info"></div>

<!--My javascript-->
<script type="text/javascript">
$(document).ready(function() {
    $('#link a').click(function(){
        var page = $(this).attr('href');
        if(page =='table')
            $('#table').load('table.php');
        else if(page =='info')
            $('#info').load('info.php');
        return false;
    })
});
</script>


<!--This is table.php-->
<div id="link"><a href="info">my Info</a></div><!--it doesn't works here-->

<!--This is info.php-->
<h1>My info</h1>
4

1 回答 1

6

您的三个<div>(如@scragar 所指出的)具有相同的 id link,很可能是导致问题的原因。让它成为这样的类:

<div class="link">

在你的 JS 中:

$('.link a')

编辑:正如 dbf 所指出的,您还必须使用live()on()代替声明您的处理程序click()

$('.link a').live('click', function(){ ... });

为了table.php在页面加载后绑定它。( http://api.jquery.com/live/ )

于 2012-12-28T14:25:37.867 回答