jQuery Ajax:插入<div>有时会失败吗?</div>

时间:2013-01-22 06:41:30

标签: jquery ajax

我使用jQuery Ajax来更新HTML页面中的div。 ajax包含在$(document).read(...)中,如下所示:

$(document).ready(function() {
  $('a.button').click(function() {
    var url = $(this).attr('href');
    $('#content').load(url);
    return false;
  });
});

然而,在单击按钮后,Ajax有时会失败并在整个页面中显示结果,而不是在'content'div中。当页面加载或刷新时,这种情况经常发生。但我想$(document).ready(...)会阻止这种情况发生。出了什么问题?

2 个答案:

答案 0 :(得分:1)

试试这个

 $(document).ready(function () {
     $('a.button').click(function () {
     var url = $(this).attr('href');        

    $.get(url, function(data) {
       $('#content').html(data);    
        });
     });
});

答案 1 :(得分:1)

  

Ajax有时会失败并在整个页面中显示结果

这表明未使用选择器a.button选择超链接。确保您希望通过AJAX加载的超链接具有类名button,如下所示:

<a class="button" href="...">

如果您希望通过AJAX加载所有超链接,请删除按钮选择器。

$(document).ready(function() {
  $('a').click(function() {
    ... ...
  });
});

如果在其他脚本加载页面后动态创建某些超链接,请尝试以下操作:

$(document).ready(function() {
  $('body').on('click', 'a', function() {
    ... ...
  });
});