Javascript 使用jquery从范围中查找单击的项

Javascript 使用jquery从范围中查找单击的项,javascript,jquery,Javascript,Jquery,我有下面的HTML。我正在尝试查找已单击的项目。例如:如果我点击ups,o/p应该是这样的ups。我写过 像这样,但没有得到我需要的。这将返回所有文本 $('.sentiment-text .text').on('click',function(e) { var str = $('.sentiment-text .text').find('span').text(); alert(str); }); 这是我正在尝试的HTML代码。在我写了上面的代码之后,我得到了全文,但不仅

我有下面的HTML。我正在尝试查找已单击的项目。例如:如果我点击ups,o/p应该是这样的ups。我写过 像这样,但没有得到我需要的。这将返回所有文本

 $('.sentiment-text .text').on('click',function(e) {
    var str = $('.sentiment-text .text').find('span').text();
    alert(str);
 });
这是我正在尝试的HTML代码。在我写了上面的代码之后,我得到了全文,但不仅仅是我点击的项目

<div class="sentiment-text">
                <div class="wrapper">
                    <div class="key"></div>

            <div class="text" style="cursor: pointer;"><div class="tags alert-success"><a href="#" class="close" data-dismiss="alert">×</a>
                <span class="noun">Thumbs</span> 
                <span class="adverb">up</span>
                 <span class="verb">ups</span>
        <span class="verb">down</span>
            </div>
            </div>

            <div class="clear-sentiment"></div>

            </div>
            </div>

拇指
向上的
不间断电源
向下

您需要对上下文使用
,并在选择器本身中以
span
为目标

$('.sentiment-text .text span').on('click',function(e) {
    var str = $(this).text();
    alert(str);
});

因此,如果将处理程序放在div上,为什么不将
.text
中的跨度作为目标并报告文本呢

$('.text span')。在('click',函数(e)上{
var str=$(this.text();
警报(str);
});

拇指
向上的
不间断电源
向下
使用以下内容:

$('.text span').on('click', function() {
  alert($(this).text());
});
试试这个:

$('.sentiment-text .text').find('span').on('click',function(e) {
    var str = $(this).text();
    alert(str);
});
$('.touction text span')。在('click',函数(e)上{
var str=$(this.text();
警报(str);
});

拇指
向上的
不间断电源
向下

请注意,已将“on”更改为“live”。我知道它在Jquery 1.7中已被弃用。但我没有其他方法。

它返回所有单词。未单击项。Thumbsupupsdown@aniltc检查演示它在页面中不起作用。我同意演示中的工作,但在我的页面中不起作用。我使用了上面相同的代码&htmld您在浏览器的开发人员控制台中看到任何错误吗?你运行了完全相同的代码吗?一定有一些不同。没有错误,但代码在我的页面中仍然不起作用。当我单击文本时,我没有得到laert
I have solved this way

$('.sentiment-text span').live('click',function(e) {
    var str = $(this).text();
    alert(str);
});