0

私は、Coffeescriptを使用したBackboneを使用して、DL、DT、DD定義リストを作成しました。以下のhtmlページでテンプレートを使用しました。問題はありません。HTMLのレンダリングに成功しました。私はクロームでhtmlを見て、要素は大丈夫です。

結局、私はアコーディオンを作ろうとしました。そして、すべてのDT非表示を試してみたかった。しかし、このタグにJqueryコードを作成できませんでした。

私はコンソールを使用しました。

 $(function () {    
       var allDD= $('div#userList dl').html();
       console.log(allDD);
      });

しかし、何もログに記録されません!

Webを検索しても何も見つかりませんでした。また試してみました。

 $(document).ready and window.onload() 

しかし、それでも何も起こりませんでした。

バックボーンレンダリング後にコードにアコーディオン効果を作成するにはどうすればよいですか。

助けてください?

  <div id="userList"> 
      // DL > DT+DD will be here
  </div>

  <script type="text/template" id="tpl-user-results">
  <dl class="users"></dl>
  </script>

  <script type="text/template" id="tpl-user-row-dt">
      <span class="percent"><%= Math.ceil(dt.score) %></span>
      <a href="#" class=""> <%= dt.username %> (<%= dt.score%>) </a>
  </script> 

  <script type="text/template" id="tpl-user-row-dd">
      <span class="percent"> <%= dd.username %> (<%= dd.score%>) 
      <img src="/user/0001.jpg">
      <p>User Info : Lorem ipsum dolor sit amet, consectetur adipisicing elit. Temporibus reiciendis corporis hic consequatur alias veniam repudiandae architecto. Maiores aliquid sint cupiditate voluptate modi debitis ipsum consequuntur quaerat odit id ipsa.</p>
  </script>
4

1 に答える 1

1

このコード

var allDD= $('div#userList dl').html();

render実際にHTMLコードをレンダリングした後、ビューのメソッドに含める必要があります。

例:

render: function() {
    this.$el.html(someTemplate);
    this.$el.accordion();
    this.$("dt").hide();
}
于 2013-01-15T20:13:42.180 に答える