在我的JSP页面中,我想动态创建一个标签,该标签位于achor标签内。当我克隆另一个锚标签时,我希望使用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="+????);
}
答案 0 :(得分:1)
快速回答:
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索引。
答案 1 :(得分:0)
给一些类锚定说class1,并使用jquery的live方法,
$(".class1").live("click",function(){
alert(this.html())
});
答案 2 :(得分:0)
在这些情况下,最好的方法是查看最终代码的呈现方式。 但是,您可以从ID中获取它:
var myLabelId = 'labelId'+i;
var myLabel = document.getElementById(myLabelId);
var myLabelValue = myLabel.innerText;