2016-05-17 15 views
0

次のコードは、ReportGroupsのリストを表示しますが、選択されたときに各ReportGroupの下にリストアイテムを表示しません。動的ブートストラップネストされたリストを表示していないリスト

type: "POST", 
    url: "wsReports.asmx/GetReports", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function (list) { 
     var text = ''; 
     text += "<ul id='newList' class='nav navbar-nav side-nav' data-toggle='dropdown'>"; 
     $.each(list.d, function() { 
      text += "<li><a href='#'>" + this.ReportGroup + "</a>"; 
      text += "<ul id='rptList' class='collapse'>" 
      $.each(this.Reports, function() { 
       text += "<li><a href='#'>" + this.ReportName + "</a></li>"; 
      }); // end of each rptList 
      text += "</ul></li>"; 
     }); // end of each newList 
     text += "</ul>"; 

     $('#divSideBar').append(text); 

    }, //end of success 

rptListにclass = collapse.inを作成すると、リストが表示されますが、ReportGroupsは折りたたまれません。

+0

返されるデータのタイプは何ですか? [あなたはあなたのデータをエンコーディングしていますか?](http://stackoverflow.com/questions/1219860/html-encoding-in-javascript-jquery)引用符や特殊文字がない場合は、出力を台無しにする可能性があります。とにかく[JS.Fiddle](https://jsfiddle.net)で問題を再現できますか? – crazymatt

答えて

0

dropdowmsを作成するためにhtmlが正しく表示されませんでした。

 type: "POST", 
    url: "wsReports.asmx/GetReports", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function (list) { 
     // http://tutorialspalace.com/bootstrap-navbar/ 
     // how to add the classes to the list. 
     var text = ''; 
     text += "<ul id='newList' class='nav navbar-nav side-nav'>"; 
     $.each(list.d, function() { 
      text += "<li class='dropdown'><a href='#' class='dropdown-toggle' data-toggle='dropdown'>" + this.ReportGroup + "<b class='caret'></b></a>"; 
      text += "<ul id='rptList' class='dropdown-menu'>" 
      $.each(this.Reports, function() { 
       text += "<li><a href='#' onclick='GetReport(" + this.ReportID +")'>" + this.ReportName + "</a></li>"; 
      }); // end of each rptList 
      text += "</ul></li>"; 
     }); // end of each newList 
     text += "</ul>"; 

     $('#divSideBar').append(text); 

    }, //end of success 
関連する問題