【问题标题】:JQuery add class to parent elementJQuery将类添加到父元素
【发布时间】:2011-03-29 19:02:57
【问题描述】:

我必须在 (li) 元素上设置类名。 此脚本查找列表中的所有 (a) 元素,并创建一个点击事件。

jQuery("#" + ElementID).find(TagName).click(function () {

    GetPageByUrl(jQuery(this).attr("href"));
    jQuery(this).parent().addClass('yourClass');
    //ChangeSelectedMenuItem(this);
    return false;
});

每个 (a) 元素的父级都是 (li) 元素

但是当这条线执行时什么也没有发生 jQuery(this).parent().addClass('yourClass');

其他一切都很好。

我在这里做错了什么?


好的,但它仍然无法正常工作。它不会添加任何类 jQuery(this).addClass('yourClass');应该向 (a) 元素添加一个类,但它没有?

【问题讨论】:

  • 发布的答案应该有效。要了解它们为什么不起作用,我们需要查看您正在使用的 html。以及其余相关的 jQuery/JavaScript。您能否发布JS Fiddle demo 来重现您的问题?

标签: javascript jquery


【解决方案1】:

指定可选的选择器来定位你想要的:

jQuery(this).parent('li').addClass('yourClass');

或者:

jQuery(this).parents('li').addClass('yourClass');

【讨论】:

    【解决方案2】:
    $(this.parentNode).addClass('newClass');

    【讨论】:

    • 在某种程度上,这条评论既正确又不正确。这取决于您的系统。如果您需要动态添加一个类,那么使用 jQuery 就可以了。如果您使用此方法添加类而不是修改基本 html,那么这不是正确的方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-01
    • 2011-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多