在jquery中返回span的空值?

时间:2015-12-30 09:17:34

标签: javascript jquery html

我希望在flike div中获得跨度值,当我点击' A'标签。在我的剧本中,我得到了无效的#39;值。我的错在哪里?谢谢。

我的HTML代码:

<div class="bottom"><div class="like">
    <a><i class="fa fa-thumbs-o-up"></i><span>5</span></a>
    <div class="flike"><span>5</span></div>
</div></div>

我的剧本:

$(function () {
    $('.like a').on('click', function () {
        var svalue = $(this).next(".flike span").html();
        alert(svalue);
    });
});

5 个答案:

答案 0 :(得分:4)

错误的选择器以定位span元素。您需要首先找到下一个div元素,然后在其中找到span元素。使用元素中的目标空间选择器将无法在dom遍历方法中工作,如.next().prev().siblings()等。使用方法:

&#13;
&#13;
$(function () {
    $('.like a').on('click', function () {
        var svalue = $(this).next(".flike").find('span').html();
        alert(svalue);
    });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="bottom"><div class="like">
    <a><i class="fa fa-thumbs-o-up"></i><span>5</span></a>
    <div class="flike"><span>5</span></div>
</div></div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

你需要找到下一个元素('flike')然后跨度 -

$(function () {
    $('.like a').on('click', function () {
        var svalue = $(this).next(".flike").find('span').html();
        alert(svalue);
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="bottom"><div class="like">
    <a><i class="fa fa-thumbs-o-up"></i><span>5</span></a>
    <div class="flike"><span>5</span></div>
</div></div>

答案 2 :(得分:1)

$(function () {
    $('.like a').on('click', function () {
        var svalue = $('.flike').children('span').text();
        alert(svalue);
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="bottom"><div class="like">
    <a><i class="fa fa-thumbs-o-up"></i><span>5</span></a>
    <div class="flike"><span>5</span></div>
</div></div>

答案 3 :(得分:0)

您可以直接获取该元素的值,如下所示:

var spanVal = $(“。flike span”)。text();

希望这会有所帮助......

答案 4 :(得分:0)

或者您可以直接使用

&#13;
&#13;
$(function () {
    $('.like a span').on('click', function () {
        var svalue = $(this).html();
        alert(svalue);
    });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="bottom"><div class="like">
    <a href="#"><i class="fa fa-thumbs-o-up"></i><span>5</span></a>
    <div class="flike"><span>5</span></div>
</div></div>
&#13;
&#13;
&#13;