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之后!谢谢