我正在学习JavaScript
遇到了一个问题,百思不得其解
希望有朋友能指点迷津
需求是这样的
有几个div盒子,每个div内有一个按钮,点击按钮之后,就会AJAX获取内容,然后添加到对应的div盒子内。
问题是:
如果连续点击几个div盒子的按钮,速度过快。导致前面的AJAX还没有获取到,则会把点击获取的内容全部添加到最后一个点击的DIV盒子内,而不是对应点击按钮的盒子
代码如下:
html:
<div class="ajaxpager">
<a class="ajax-next" ajax-href="xxxxx1.php">加载1</a>
</div>
<div class="ajaxpager">
<a class="ajax-next" ajax-href="xxxxx2.php">加载2</a>
</div>
<div class="ajaxpager">
<a class="ajax-next" ajax-href="xxxxx3.php">加载3</a>
</div>
<div class="ajaxpager">
<a class="ajax-next" ajax-href="xxxxx4.php">加载4</a>
</div>
JS:
function get_ajax($this, con) {
//准备传入参数
href = $this.attr("ajax-href") || $this.attr("href");
href && $.ajax({
type: "GET",
url: href,
dataType: "html",
success: function(a) {
data = $(a).find(con);
$($this.parents(con)[0]).append(data);
}
});
return !1;
}
// 绑定点击动作
$('body').on('click', ".ajax-next", function() {
return get_ajax($(this), '.ajaxpager'), !1;
})
望大神指点一二!
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…