动作没有被调用

时间:2014-11-28 08:11:28

标签: javascript twitter-bootstrap ember.js

我试图在Ember的循环中调用一个动作函数。我正在通过这本书做所有事情我不知道为什么函数永远不会被解雇。

以下是我正在使用的引导程序下拉列表

<ul id="dropdown-id" class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu1" style="width:100%;">
  {{#if isLoadingSearch}}
    <li role="presentation" style="padding:10px;">
      <p class="lead">
        Loading... please wait
      </p>
    </li>
  {{else}}
    {{#each serachUsers}}
      <li role="presentation">
        <a class="btn-link" {{action 'chooseEmail' this}}>
          <p class="lead">
          <img class="img-circle" {{bind-attr src=avatar}} alt="" height="50">
          {{fullname}}
          </p>
        </a>
      </li>
    {{/each}}
  {{/if}}
</ul>

通常应该调用chooseEmail函数。它在我用于标准表的所有循环中都有,但不知何故,这个下拉列表不会启动

该功能在内部操作和正确的控制器内部我不知道为什么这不起作用。

这是我的控制器代码

App.MyRoute = Ember.Route.extend({
  // initial value
  setupController: function(controller, context){
    controller.reset();
  }
});

App.MyController = Ember.Controller.extend({

  reset: function(){
    this.setProperties({
      serachUsers:"",
      isLoadingSearch:false,
    });
  },

  actions :{

    queryDB: function(){
      $("#dropdown-id").dropdown('toggle');
      var self = this;
      if (self.get('sellerEmail')) {
        var data = {'oauth_consumer_key':sessionStorage.access_token,'device_id':sessionStorage.device_id,'device_name':'web','query':self.get('sellerEmail')};
        self.set('isLoadingSearch',true);
        $.ajaxSetup({
          contentType: "application/json; charset=utf-8",
          dataType: "json",
        });

        $.post('/api/v1/user/search/',JSON.stringify(data)).then(function(response){
          if (response.success) {
            self.set('serachUsers',response.users);
            self.set('isLoadingSearch',false);
          };
        });
      };
    },

    chooseEmail: function(user){
      alert('check');
      var self = this;
      self.set('sellerEmail',user.user_id);
      $(".dropdown").removeClass("open");
    },
  },

});

时髦的东西

所以,当我摆脱下拉列表时,它的工作正常,

{{#each serachUsers}}
<li role="presentation">
  <a class="btn-link" {{action "chooseEmail" this}}>
    <p class="lead">
    <img class="img-circle" {{bind-attr src=avatar}} alt="" height="50">
    {{fullname}}
    </p>
  </a>
</li>
{{/each}}

有什么想法吗?

0 个答案:

没有答案