AJAX加载PHP文件
我是AJAX新手,我有一个加载table.php的链接。然后将代码写入index.php。在这段代码中,我有另一个指向 显示info.php。有可能这样做吗AJAX加载PHP文件,php,ajax,Php,Ajax,我是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"&g
<!--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>
$(文档).ready(函数(){
$('#链接a')。单击(函数(){
var page=$(this.attr('href');
如果(第=='table'页)
$('#table').load('table.php');
else if(第=='info'页)
$('#info').load('info.php');
返回false;
})
});
我的信息
您的三个
(正如@scragar所指出的)具有相同的id链接,很可能是导致问题的原因。让它成为这样一个类:
<div class="link">
编辑:正如dbf所指出的,您还必须使用live()
或on()
声明处理程序,而不是click()
:
以便在页面中加载table.php
后将其绑定。()您的三个
(正如@scragar所指出的)具有相同的id链接,很可能是导致问题的原因。让它成为这样一个类:
<div class="link">
编辑:正如dbf所指出的,您还必须使用live()
或on()
声明处理程序,而不是click()
:
以便在页面中加载table.php
后将其绑定。()有什么不管用的?Firebug/other JS调试器对此有何评论?尝试更改$(this.attr('href')
到$(this.prop('href')代码>@PranavKapoor那么从上到下三次怎么样..有什么不起作用?Firebug/other JS调试器对此有何评论?尝试更改$(this.attr('href')
到$(this.prop('href')
@PranavKapoor那么从上到下三次怎么样..他有三个ID为的div,而不是两个。@tchap你的意思是将其更改为类(这是一个很好的建议)会在将table.php
文件中的给定
元素插入DOM时,神奇地将其添加到$(此)
罪魁祸首here@tchap然后你猜错了,你必须在内容被加载到#table
之后重新绑定点击处理程序,否则
就会从table.php
通过链接info
进入涅磐,这可能不是他想要的。他希望table.php
中的
元素将内容加载到info.php
中的#info
中。他有三个ID为的div,而不是两个。@tchap您的意思是将其更改为类(这是一个很好的建议)将table.php
文件中的给定
元素插入DOM时,是否会神奇地添加一个单击处理程序?我想是的,$(此)
就是罪魁祸首here@tchap然后您猜错了,您必须在内容加载到#表
后重新绑定单击
处理程序,从表中选择
。php
将通过链接info
进入涅磐,这可能不是他想要的。他希望table.php
中的
元素从info.php
将内容加载到#info
中。。
$('.link a').live('click', function(){ ... });