我使用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(...)会阻止这种情况发生。出了什么问题?
答案 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() {
... ...
});
});