Javascript jquery addClass和removeClass问题
我在jQuery以及添加和删除类方面遇到了一些奇怪的问题。我试图看到json请求成功后,对于特定的超链接,它应该调用Javascript jquery addClass和removeClass问题,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我在jQuery以及添加和删除类方面遇到了一些奇怪的问题。我试图看到json请求成功后,对于特定的超链接,它应该调用addClass和removeClass来添加/删除特定的css属性。当我点击它时,它永远不会工作,但是当我独立尝试css类时,它们工作得很好。这里有我遗漏的东西吗?谢谢你的意见 $(document).ready(function() { $('.add_link').bind("click", function(e) { $.getJSON("/add/
addClass
和removeClass
来添加/删除特定的css属性。当我点击它时,它永远不会工作,但是当我独立尝试css类时,它们工作得很好。这里有我遗漏的东西吗?谢谢你的意见
$(document).ready(function() {
$('.add_link').bind("click", function(e) {
$.getJSON("/add/", function(json) {
if (json.SUCCESS != null) {
$(this).removeClass('blue_button_link').addClass('gray_out_button_link');
}
});
});
});
在事件处理程序中,您有另一个上下文,因此您不能按照自己的意愿使用
this
。尝试:
$(document).ready(function() {
var link = $('.add_link');
link.bind("click", function(e) {
$.getJSON("/add/", function (json) {
if (json.SUCCESS != null) {
link.removeClass('blue_button_link').addClass('gray_out_button_link');
}
});
});
});
或:
在事件处理程序中,您有另一个上下文,因此您不能按照自己的意愿使用
this
。尝试:
$(document).ready(function() {
var link = $('.add_link');
link.bind("click", function(e) {
$.getJSON("/add/", function (json) {
if (json.SUCCESS != null) {
link.removeClass('blue_button_link').addClass('gray_out_button_link');
}
});
});
});
或:
$(此)
不再是对$('add_link')
请求中的$的引用。您需要在请求之外存储对它的引用<代码>变量me=$(此)代码>然后$.getJSON
。。。最后,在if语句中,me.removeClass()
…等,这应该对$(这)
不再是对$('add\u link')
请求中的$的引用。您需要在请求之外存储对它的引用<代码>变量me=$(此)代码>然后$.getJSON
。。。最后,在if语句中,me.removeClass()
…等等,这应该对您有好处
$(document).ready(function() {
$('.add_link').bind("click", function(e) {
var link = $(this);
$.getJSON("/add/", function (json) {
if (json.SUCCESS != null) {
link.removeClass('blue_button_link').addClass('gray_out_button_link');
}
});
});
});