Aurelia click.delegate或click.trigger在克隆元素

时间:2017-06-16 08:43:54

标签: javascript jquery aurelia

在我的Aurelia项目中,我在顶部有一个隐藏的表(我的标题是克隆),当原始的一个滚动到视图之外时,我想使用它来显示它的标题(固定位置)。我遇到的问题是克隆标题的click.delegate没有调用我的打字稿中的方法。

view.html

<table id="fixed-header"></table>
<table scrollable-header id="tableWithScrollableHeader" if.bind="something">
    <thead>
            <tr>
                <th width="55%">
            </th>
                <th repeat.for="item of listOfItems">
                    ${item.name}
                    <div>
                        <label click.delegate="doSomething(item.id)">
                            <span>${item.date}</span>
                            <i class="glyphicon glyphicon-pencil"></i>
                        </label>
                    </div>
                </th>
            </tr>
        </thead>
    <tbody repeat.for="itemOfBody of listOfItemsForBody">
        // irreleveant code that displays the table's body
    </tbody>
</table>

scrollable-header是我创建的自定义属性,用于克隆表格的标题并使用

将其附加到隐藏表格
 var $tableHeader = $("#tableWithScrollableHeader > thead");
 var $clonedHeader = $tableHeader.clone(true, true);
 var $fixedHeaderTable = $("#fixed-header").append($clonedHeader);

然后在滚动时,它确定是显示原始表格的标题还是固定定位的标题。 (类似于this回答) 当原始视图不在视图范围内但单击标签时,它会正确显示固定标题。 我也尝试用click.delegate替换click.trigger,但没有任何区别。

1 个答案:

答案 0 :(得分:0)

查看这篇文章的答案:Aurelia dynamic binding听起来你需要动态绑定。示例gist,在附加click.delegate触发警报后创建一个按钮

从上面的帖子链接到要点:https://gist.run/?id=1960218b52ba628f73774822aef55ad7