javascript - 当我使用 javascript 从 anchor 标记单击时,如何获取动态创建的标签的文本

标签 javascript jquery html jsp

在我的 JSP 页面中,我想动态创建一个标签,它位于一个 achor 标签内。当我点击另一个 anchor 标签时,我想使用 javascript 或 jquery 获取相应的标签文本。

这是我的 JSP 页面代码。

<body>
    <%
        for (int i = 0; i < sam.groupName.length; i++) {

            out.print("<a href='#'>");
            out.print("<img src='twoMen.jpg'/>");
            out.print("<label for='groupsId' id='labelId"+i+"'>"+ sam.groupName[i] + "</label>");
            out.print("</a>");

            out.print("<a href='javascript:void(0);' onclick='validation(this,"+i+");'>Edit</a>");

        }
    %>
</body>

Javascript 代码:

function validation(anchor,i) {
        alert("Label value="+????);
    }

最佳答案

快速回答:

function validation(anchor,i) {
    var value = $("#labelId"+i).text();
    alert("Label value= "+ value);
}

只需使用您拥有的标签的 ID,然后从中获取文本。

.text() 将向您返回标签中的 TEXT。如果该文本包含在另一个嵌套标记中,则不会。如果是这种情况,请使用 .html() 或指定您的 jQuery 选择器。

更新

我还想到了另一种解决方案,我认为这个会更简单:

<body>
<%
    for (int i = 0; i < sam.groupName.length; i++) {

        out.print("<a href='#'>");
        out.print("<img src='twoMen.jpg'/>");
        out.print("<label for='groupsId' id='labelId"+i+"'>"+ sam.groupName[i] + "</label>");
        out.print("</a>");

        out.print("<a href='javascript:void(0);' onclick='validation(this,'"+sam.groupName[i]+"');'>Edit</a>");

    }
    %>
</body>

然后你可以使用验证函数如下:

function validation(anchor,value) {
    alert("Label value="+ value);
}

这样做是一样的,但它传递的是你需要的值,而不是指向你需要的值的索引。除非您以后需要 i 索引用于其他任何事情,否则这是有效的。

关于javascript - 当我使用 javascript 从 anchor 标记单击时,如何获取动态创建的标签的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12741520/

相关文章:

html - 图片显示不正确

javascript - 谷歌日历 API Javascript Quickadd

javascript - 使用jquery更改 slider handle 的位置

jquery - 谷歌翻译填充问题

javascript - 显示一个div onload,延长1秒,然后淡出同一个div,淡入内容div

javascript - JS 函数包装

javascript - HTML 中 p 标签的 jQuery .attribute

javascript - 从 Microsoft Graph Api 访问组时出现问题

javascript - 使用 Javascript/Jquery 创建一行单元格 (DIV)

Javascript - KineticJS 创建自己的类