【发布时间】:2011-10-27 14:52:22
【问题描述】:
我只是想在通过 Ajax 拉入的元素上使用 Jquery 的 removeClass()。我很清楚能够将 .live() 用于“点击”之类的操作,但是对于 removeClass() 之类的功能我可以做什么?
注意:我听说过可以做到这一点的 JQuery 插件,但我宁愿自己使用 Jquery 编写它,如果它不残酷的话。
谢谢,
丹尼尔·莫尼兹
编辑:抱歉信息不足。我正在构建一个自动完成工具。用户按下一个键并获得通过 AJAX 拉入的项目列表。第一项会自动突出显示,因为(在 AJAX 回调中)我使用 .addClass() 给它“highlight”类。
但是,如果用户点击向上或向下箭头键,他们应该能够在列表中“导航”,即。我突出显示(和取消突出显示)列表中的项目。这些操作是在按钮按下时进行的,并且列表已经通过 AJAX 拉入。因此,我无法在 Ajax 回调中删除该类。
$(".highlight") 将有效地抓取当前突出显示的元素。
highlightedTopic.removeClass("highlight")
在执行上述代码并使用console.log($(".highlight")); 之后,我得到了元素的输出with 'highlight' 类。所以 removeClass() 函数失败(没有错误)。
【问题讨论】:
-
可以在回调方法中使用。您能否提供更多信息,例如您的 html 和任何 javascript?
-
你需要解释更多。根本不清楚问题是什么。
removeClass()作用于通过 AJAX 请求创建的元素,就像它作用于原始 DOM 元素一样。因此,您需要解释您的具体案例,以便我们了解它为什么不起作用。 -
我在上面添加了一些信息来澄清我的情况。
-
removeClass 函数并非没有错误地失败,您在尝试删除类时一定是做错了什么。没有看到你的代码很难提供帮助。
标签: jquery ajax removeclass