使用parent()获取标题值

Grab the title value by using parent()

本文关键字:标题 获取 parent 使用      更新时间:2023-09-26

我有这样的html代码:

<a class="ms-navedit-linkNode" title="Apps" href="url/test">
    <span class="menu-item-text">Apps</span>
</a>

我想把标题的值从"Apps"改成别的。

这是我使用的javascript,但它只是给我的标题变量undefined

注意:在我的js代码中其他一切都很好

<script type="text/javascript">
    $(document).ready(function() {
        $(".menu-item-text").each(function() {
            var text = $(this).text();
            if (text == "Apps") {
                $(this).text("");
                $(this).text("Organization");
                var title = $(this).parent().attr("title");
                if (title == "Apps") {
                    $(this).parent().attr("title", "Organization");
                }
            }
        });
    });
</script>

我在这里做错了什么吗?

你的html缺少双引号

<a class="ms-navedit-linkNode" title="Apps" href="url/test">
    <span class="menu-item-text">Apps</span>
</a>

Attr上也有大写的a。应该是:

$(".menu-item-text").each(function() {
    var text = $(this).text();
    if (text == "Apps") {
        $(this).text("Organization");
        var title = $(this).parent().attr("title");
        alert($(this).parent().attr("title"));
        if (title == "Apps") {
            $(this).parent().attr("title", "Test");
            alert($(this).parent().attr("title"));
        }
    }
});

我设置了两个警报来提醒title属性,在它被更改之前和之后。

小提琴:http://jsfiddle.net/VinnyFonseca/x8ceZ/

你就快成功了。小提琴给你。

变化:

  1. $(this).val("");$(this).text("");(您可以完全删除语句)。
  2. $(this).parent().Attr("title", "Test");$(this).parent().attr("title", "Test");