Javascript 单击链接获取标签元素的文本

Javascript 单击链接获取标签元素的文本,javascript,jquery,html,Javascript,Jquery,Html,我有一个无序列表,在每个元素下,我有一个和一个链接来获取的文本 例如,如果我点击第一个“复制文本”链接,我想得到“label1”,第二个我想得到“label2” 我已经想出了下面的代码,但它不工作。谁能帮我修一下吗 HTML代码: <ul> <li> <label>label1</label> <a onclick="copyText()">Copy Text</a> <

我有一个无序列表,在每个
  • 元素下,我有一个
    和一个链接来获取
    的文本

    例如,如果我点击第一个“复制文本”链接,我想得到“label1”,第二个我想得到“label2”

    我已经想出了下面的代码,但它不工作。谁能帮我修一下吗

    HTML代码:

    <ul>
        <li>
            <label>label1</label>
            <a onclick="copyText()">Copy Text</a>
        </li>
        <li>
            <label>label2</label>
            <a onclick="copyText()">Copy Text</a>
        </li>
    </ul>
    
    function copyText() {
        alert($(this).closest('li').children('label').text());
    }
    

    您需要传递元素的上下文,并将
    Text
    更改为
    .Text()


    您可以避免使用jQuery,直接获取元素的文本:

    function copyText(el) {
        alert(el.previousSibling.textContent);
    }
    

    我建议使用不引人注目的JavaScript并添加事件侦听器:

    $('li a').on('click', function () {
        alert($(this).closest('li').find('label').text());
    });
    

    function copyText(el) {
        alert(el.previousSibling.textContent);
    }
    
    $('li a').on('click', function () {
        alert($(this).closest('li').find('label').text());
    });