0

私はこのコードを持っています - テンプレートでレンダリングされる DOM 要素にクラスを追加するだけです。ただし、これは機能しません。

    this.get('#/:post_id', function(context){
            context.app.swap('');
         this.load('/post/' +  this.params['post_id'])
             .then(function(candidates){
                  $.each(candidates[1], function(i, candidate){
                      context.render("static/templates/candidate.template", {candidate:candidate})
                     .appendTo(context.$element());
             });
         })
        .then(function(){
            $('h3').addClass('custom_class');
         });

Candidate.template:

<div>
  <h3>Name : <%= candidate.name %> </h3>
  ...
  ...
</div>
4

1 に答える 1

0

私はサミーに慣れていないので、これを一粒の塩で取ってください. 最初の .then() が(コンテキストなど)何も返さないため、失敗していると思います。つまり、次の .then() には何も処理されません。

このようなものは機能しますか?

this.get('#/:post_id', function(context){
        context.app.swap('');
     this.load('/post/' +  this.params['post_id'])
         .then(function(candidates){
              $.each(candidates[1], function(i, candidate){
                  context.render("static/templates/candidate.template", {candidate:candidate})
                 .appendTo(context.$element());
         });
         return context;
     })
    .then(function(){
        $('h3').addClass('custom_class');
     });
});
于 2012-07-29T16:09:28.660 に答える