如何在javascript中获取动态创建的标签元素的id

时间:2012-09-24 22:11:55

标签: javascript jquery html pug

我想在javascript中获取动态创建标签的文本,这是在jade中创建的。这是玉:

- for( var i = 0; i < groupsName.length; i++ ) {
  li
    a(href='JavaScript:validation(this)')
        img(src='/images/edit.png', width='60', height='60', style='margin:8px 10px 10px 20px;')  
         h3 #{groupsName[0]}
          label(for='groupsId' , id='labelid'+i ) #{groupsId[i]}
      a(href='/groupdetails') Edit  
  - }

这是我的javascript代码:

 function validation(val){
   var valid=val.id;
   alert(document.getElementById(valid).innerHTML);
 }

1 个答案:

答案 0 :(得分:2)

不确定我是否正确解释您的模板,但只要动态标签是锚标记的后代触发验证,这应该有效:

首先将href替换为onclick,否则传递的this将引用window。生成的锚标记应如下所示:

<a href="javascript:void(0);" onclick="validation(this);">

然后稍微调整你的功能:

function validation(anchor) {
    var lbl = anchor.getElementsByTagName('label')[0];
    alert(lbl.innerHTML);
    alert(lbl.id);
}​

Fiddle