带knockout.js的Bootstrap popover

我有一个应用程序通过AJAX调用接收一些数据。然后,使用knockout.js库将接收到的数据绑定到DOM元素。我想使用boostrap的低调标记来创建这样的弹出窗口:

<table class=“table-table-condensed”数据绑定=“foreach:items”>
<tr>
<td&gt&书信电报;b data bind=“text:$data.id”&gt&lt/b&gt&lt/td>
<td data bind=“text:$data.title”&gt&lt/td>
<td&gt&书信电报;a href=“”rel=“popover”data bind=“attr:{title:$data.info}”data placement=“top”>信息&lt/a&gt&lt/td>
&lt/tr>
&lt/表>

根据最新的bootstrap文档,不需要像$('.popover').popover()这样的隐式调用,但是,它不起作用

我想,boostrap.js对document.ready执行一些DOM分析,并执行popover工作所需的所有工作。问题是:在收到AJAX响应后,是否有办法告诉bootstrap.js对数据执行类似的工作?或者如何达到这种要求

您可以创建自定义数据绑定,以使该元素成为popover。检查这个JSFIDLE演示

ko.bindingHandlers.bootstrapPopover={
init:函数(元素、valueAccessor、allBindingsAccessor、viewModel){
var options=ko.utils.unwrapobbservable(valueAccessor());
var defaultOptions={};
options=$.extend(true,{},defaultOptions,options);
$(元素).popover(选项);
}
};
var viewModel={
项目:ko.Array([{
“id”:1,
“标题”:“标题-1”,
“info”:“info-1”},
{
“id”:2,
“标题”:“标题2”,
“info”:“info-2”},
{
“id”:3,
“标题”:“标题-3”,
“信息”:“信息-3”}])
}
应用绑定(视图模型);​

和html

<div class=“container”>
<div class=“英雄单位”>
<table class=“table-table-condensed”数据绑定=“foreach:items”>
<tr>
<td&gt&书信电报;b data bind=“text:$data.id”&gt&lt/b&gt&lt/td>
<td data bind=“text:$data.title”&gt&lt/td>
<td&gt&书信电报;a href=”“data bind=“bootstrappover:{content:$data.info}”>信息&lt/a&gt&lt/td>
&lt/tr>
&lt/表>
&lt/部门>
&lt/部门>​

发表评论