3

jade で作成された javascript で動的に作成されたラベルのテキストを取得したいと考えています。ここに翡翠があります:

- 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);
 }
4

1 に答える 1

2

テンプレートを正しく解釈しているかどうかはわかりませんが、動的ラベルが検証をトリガーするアンカータグの子孫である限り、これは機能するはずです:

最初に を に置き換えます。そうしないと、href渡される が を参照します。生成されたアンカー タグは次のようになります。onclickthiswindow

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

次に、関数を少し調整します。

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

フィドル

于 2012-09-24T22:33:00.693 に答える