Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript fancybox.update()不工作_Javascript_Jquery_Ember.js_Fancybox - Fatal编程技术网

Javascript fancybox.update()不工作

Javascript fancybox.update()不工作,javascript,jquery,ember.js,fancybox,Javascript,Jquery,Ember.js,Fancybox,我有一个fancybox来管理用户。现在我定义了一个函数来将用户设置为主用户。以下是模板: <ul class="user-list"> {{#each inquiry.users as |user|}} <li> {{user.email}} {{#if (isEqual user.id createdBy)}}<span> (primary) </span>

我有一个fancybox来管理用户。现在我定义了一个函数来将用户设置为主用户。以下是模板:

<ul class="user-list">
    {{#each inquiry.users as |user|}}
        <li>
          {{user.email}}
          {{#if (isEqual user.id createdBy)}}<span> (primary) </span> 
              {{else}} <button type="button" class="pretty small btn" {{action 'setPrimary' user}}>Set to Primary</button>
           {{/if}}
          <div class="pretty small danger btn icon-right entypo icon-cancel" {{action 'removeUser' user}}><a href="#">remove</a></div>
        </li>
    {{/each}}
</ul>

您可以看到,isEqual辅助对象中的createdBy是一个计算属性。如果用户id等于查询创建的人员id,则该用户是主要用户。或者您可以将用户设置为主要用户,这会触发一个操作,将查询的创建的
设置为当前用户的id。我使用
$.fancybox.update()
重新呈现内容,但当我单击
设置为主要
按钮时,没有任何更改。有人能告诉我哪部分错了吗?我是否应该使用observer而不是computed属性作为
createdBy
属性?

使用
$.fancybox.update
方法的作用是
自动调整fancybox高度以匹配内容的高度
。。。所以问题是:当你按下
设为主按钮时,你的内容真的会改变吗?(假设此按钮是已打开的fancybox内容的一部分)。。。或者我应该问一下,你真的明白
$.fancybox.update
方法的作用吗?(这不是为了重新呈现内容或任何内容)嗨,JFK,谢谢你帮助我清除
$.fancybox.update
的用法。我假设它将重新呈现内容。好的,这就是为什么我必须刷新页面才能看到更改的原因。你知道如何解决这个问题吗?任何想法都会有帮助!谢谢。我最终解决了这个问题,添加了一个观测者,即computed属性
createdBy
,无论您单击哪个用户将其设置为主要用户,结果都会立即显示
createdByChanged:function(){this.set('createdBy',this.get('inquiry.created_by'));}.observes('inquiry.created_by')
createdBy: function() {
    return this.get('inquiry.created_by');
}.property('inquiry'),
actions: {
    setPrimary: function(user){
        var inquiry = this.get('inquiry');
        var userId = user.get('id');
        inquiry.set('created_by', userId);
        inquiry.save();
        $.fancybox.update();
    }
}