ajax只是首次用于页面加载

ajax只是首次用于页面加载,ajax,jquery,Ajax,Jquery,这件事让我痛苦了两天 我有一个简单的代码: <?php if(!isset($_GET['headerload'])){?> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> <script src="http://royta.ir/js/all.js" type="text/javascript"></script

这件事让我痛苦了两天
我有一个简单的代码:

<?php if(!isset($_GET['headerload'])){?>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="http://royta.ir/js/all.js" type="text/javascript"></script>
<script src="http://royta.ir/js/main.js'?>"></script>
<div id="content">
<? } ?>

<a class="item ajax"  base="basic" data-title="تنظیمات عمومی" href="http://royta.ir/general/" data-url="/general/" title="تنظیمات عمومی" >asdasd</a>
}) 但是当我运行此页面时,您可以看到
使用ajax只需运行1次,一切正常,但若再次单击链接页面,则会重新加载

有人知道为什么吗?

你看。。。当您运行
$('#content').html(loaddataa)时
,一个新的
加载到页面上,因此绑定到元素的事件(
$('a.ajax')。单击
)不再存在

如果你真的想让你的页面像一个有效的HTML页面一样工作,那么试着替换它

$('a.ajax').click(function(eee){


它绑定到将来创建的元素。

您可以看到。。。当您运行
$('#content').html(loaddataa)时
,一个新的
加载到页面上,因此绑定到元素的事件(
$('a.ajax')。单击
)不再存在

如果你真的想让你的页面像一个有效的HTML页面一样工作,那么试着替换它

$('a.ajax').click(function(eee){


它绑定到将来创建的元素。

在将内容添加到页面之前,将分配单击处理程序。您需要使用委托

$("body").on("click", "a.ajax", function(e) {
    ...
});
理想情况下,您应该使用尽可能接近a.ajax的父选择器替换
body
。但是
body
肯定会起作用

<div id="foo">
    <!-- a.ajax inserted here -->
</div>

$("#foo").on("click", "a.ajax", function(e) {
    ...
});

$(“#foo”)。在(“单击”,“a.ajax”,函数(e){
...
});
这是JSFIDLE


在将内容添加到页面之前,将分配单击处理程序。您需要使用委托

$("body").on("click", "a.ajax", function(e) {
    ...
});
理想情况下,您应该使用尽可能接近a.ajax的父选择器替换
body
。但是
body
肯定会起作用

<div id="foo">
    <!-- a.ajax inserted here -->
</div>

$("#foo").on("click", "a.ajax", function(e) {
    ...
});

$(“#foo”)。在(“单击”,“a.ajax”,函数(e){
...
});
这是JSFIDLE


hmm我不想在firefox页面源代码的另一个页面中。。。让我测试一下。我使用$('a.ajax')。在('click',function(eee){现在,但同样的问题嗯,我在firefox页面源代码的页面中没有其他问题…让我测试一下。我使用$('a.ajax')。在('click',function(eee){现在,但同样的问题像charm!在文件结尾加载main.js之后!谢谢像charm一样工作!在文件结尾加载main.js之后!谢谢