3
 $("#jqxTree-ReportGroups ul").append("<li id=" + [data[i].Id] + " item-checked='true' item-expanded='true' class='treeLi'> 
<a class='report-tree-expand'  href=''>+</a> 
<a class='reportData' id='12345' href=''>" + [data[i].Name] + "</a></li>");

クリックしたときにクラス名「reportData」で「id」の属性値を取得する方法は?

編集:クリックは機能しません..ライブを使用すると、その関数が呼び出されます...ライブ関数内でreportDataのIDを取得する方法

4

4 に答える 4

0

jQuery 内の HTML 文字列の連結が間違っています。ライブ機能を備えたこのコードを見てください。または、これを読み取れるようにする場合は、JavaScript テンプレート エンジンMustacheも使用できます。

HTML:

<div id="jqxTree-ReportGroups">
    <ul>
        <li>First</li>
    </ul>
</div>

jQuery:

$(document).ready(function () {
   var yourLiID = 100;
   var aValue = 'Report Data';
   var yourLi = "<li id='" + yourLiID + "' item-checked='true' item-expanded='true' class='treeLi'>";
   var yourAnchor = "<a class='report-tree-expand'  href=''>Your Text</a> ";
   var secondAnchor = "<a class='reportData' id='12345' href=''>" + aValue + "</a>";
   var yourLiClose = '</li>';
   $("#jqxTree-ReportGroups ul").append(yourLi + yourAnchor + secondAnchor + yourLiClose);

    $('.reportData').live("click", function(){
      var yourAnchorID = $(this).attr('id');
        alert('yourAnchorID: ' + yourAnchorID);
      return false;
    });

});

jsFiddleデモについては、このリンクを参照してください

于 2013-06-15T06:26:26.143 に答える