【发布时间】:2015-12-03 19:51:35
【问题描述】:
我想使用 jQuery 向我的网站添加类似的功能,但我的元素选择器不起作用。
HTML:
<a class="btn-like" id="1">2</a>
JQUERY(HTML 不工作):
$( document ).ready(function() {
$(".btn-like").click(function() {
var like_id = $(this).attr("id");
$('a.btn-like#'+like_id).html('Loading ...');
$.ajax({
type: "POST",
url: "like.php",
data: 'item_id='+like_id,
cache: false,
success: function(data) {
$('a.btn-like#'+like_id).html(data);
alert(data); //correct response
$('a.btn-like#'+like_id).addClass('liked');
}
});
return false;
});
});
JQUERY(HTML 工作):
$( document ).ready(function() {
$(".btn-delete").click(function() {
var item_id = $(this).attr("id");
$('a.btn-delete#'+item_id).html('Loading ...');
$.ajax({
type: "POST",
url: "post.php",
data: 'item_id='+item_id,
cache: false,
success: function(data) {
$('div#post_'+item_id).remove();
}
});
return false;
});
});
ajax 帖子的响应是正确的。但是.html 更新不起作用
点击链接后内容不变。
【问题讨论】:
-
Quit using
alert()for troubleshooting.,请改用console.log()。 -
你不能只使用
$(this).html('Loading...');吗? -
在另一个起作用的函数
.html工作正常。只有我那个代码不是 -
你为什么不直接使用 $(this).html('Loading .... ') ?
-
你也改成
$(this).html(data);了吗?顺便说一句,“正在加载...”有效吗?而且我不认为这是具有相同 id 的多个元素的另一种情况?