2015-10-07 64 views
1

我使用footable插件与角度问题, 问题是footable将新表格行附加到我的表格,但它粘贴原始html文本而不是角度替换值,我的意思是{{ “注释” |翻译}},而不是“评论”(见“附加表图像”)已编译页面中的新绑定

appended table image

我添加点击事件,执行专项行动,重新评估,但我不知道如何重新绑定元素HTML。

表HTML

<th data-hide="phone,tablet" >{{'QUANTITY'| translate}}</th> 
... 
<tr ng-repeat="item in items | filter:itemsFilter" on-last-repeat ng-click="rowExpanded($event)" > 
    <td>{{item.Stock}}</td> 
    ... 
</tr> 

现在请让我,如果你需要更多的信息。我很困,试图用Google搜索,但我不知道我的问题。

编辑:在我看来,init脚本缓存表头,然后重用那些不是由角度编译的值,也许可以帮助找到答案。

问题是,角度不知道细节行存在,它里面绑定不与价值观

expanded first row with console view

+0

当然,我们需要更多信息:http://stackoverflow.com/help/mcve – Magus

+0

您是否获得桌面视图的确切文本和数据? –

+0

表头使用相同的绑定,afaik footable获取标题文本并将其放入新的详细信息行中。当我缩小窗口大小时,列消失,并且它们的标题绑定文本({{'QUANTITY'| translate}})出现在详细信息行中。 – Ernis

回答

0

我想通Ø UT,我需要重新编译追加到footable下一个元素,我加了NG-单击表行:

<tr ng-repeat="item in items | filter:itemsFilter" on-last-repeat ng-click="rowExpanded($event)" > 

然后在控制器中,我发现,currentTarget.nextElementSibling将返回,下一个表行,这正好是那个未编译的新的细节行,所以$ compile可以做到这一点。然而,当行已经被扩展并且窗口被调整大小时,这不起作用,详细信息行中的添加列将使用{{variablename}}语法。但我想我可以与下行

$scope.rowExpanded = function($event){ 
    $timeout(function(){ 
     console.log($event.currentTarget.nextElementSibling); 
     $compile($event.currentTarget.nextElementSibling)($scope); 
    }); 

}; 

编辑生活:确定这没有工作,当我用<进度>模板。因为当footable读取数据的时候它只是一堆div,当我问angular来编译这些,它不能编译,因为一堆div不是> progressbar <

但是,我发现另一个解决方案,所有事情都在角度方面完成后,我推迟了脚踏初始化:

TL; DR;我从表中删除类'footable',所以它不会自动初始化,并且只有在所有ng-repeat行被添加(并编译)到表后,才在表元素上调用.footable()。这解决了我目前所有的脚架/角度关系问题。

-1

尝试间隔出你的翻译的语句代替,这样反而

{{'COMMENT'|translate}} 

尝试

{{ 'COMMENT' | translate }} 
+0

翻译工作,因为标题文本使用相同的绑定。它在动态添加的详细信息行中不起作用。 – Ernis

相关问题