相关疑难解决方法(0)

获取动态插入的HTML以使用knockoutjs

我正在为我的所有表使用JQuery DataTables,因为它具有所有漂亮的内置功能,但似乎自定义表格布局的唯一方法是为DataTable设置"sDom"选项属性并使用类似的方法$("div.SOMECLASS").html(HTML_HERE)来插入定制html到表中.(仅供参考,我只是想自定义标题).

问题是我希望插入的html使用knockoutjs绑定.Knockout似乎没有以这种方式初始化绑定.

有办法解决这个问题吗?

这是我要插入的html的一部分.它几乎是表格的一些自定义过滤器函数的下拉列表.

'<li><a data-bind="click: Filter(\'Severity 1\', 2)">Severity 1</a></li>'
Run Code Online (Sandbox Code Playgroud)

html javascript jquery knockout-2.0 knockout.js

41
推荐指数
1
解决办法
2万
查看次数

在jquery .html()附加后,绑定不起作用

我有这个简单的div:

<div id="mainContent">

</div>
Run Code Online (Sandbox Code Playgroud)

它是空的.现在我想把它附加HTML到上面的div:

<div id="mainContent">
   <label>Project Name</label>
   <input type="text" id="projectName" data-bind="value: projectName"/> 
   <label>Tracker Name</label>
   <input type="text" id="trackerName" data-bind="value: trackerName"/>
</div>
<button type="submit" data-bind="click: submitNewProject">Submit</button>
Run Code Online (Sandbox Code Playgroud)

通过使用:

                       $.ajax({
                             type : 'POST',
                             url : 'newTracker.php',
                             dataType : 'html',
                             success : function(data){
                                     $("#mainContent").html(data);
                             },
                             error : function(XMLHttpRequest, textStatus, errorThrown) {
                                     alert('Something is wrong!');
                             }
                     });
Run Code Online (Sandbox Code Playgroud)

哪里dataHTML我试图通过分配:$("#mainContent").html(data);

起初看起来一切都很漂亮,但是有一个问题 - 绑定不起作用.

我的意思是,在新分配的HTML我有一个按钮应该调用viewmodel函数,但它不...

但是,如果我将代码直接放在div中,绑定就像魅力一样.

当我HTML在div中分配新代码时,为什么我的出价不起作用?我知道我错过了一些非常小而基本的东西,但我无法发现它.

编辑:

按钮事件:

 submitNewProject = function(){
                            console.log("submit new project");
                        };
Run Code Online (Sandbox Code Playgroud)

html javascript jquery knockout.js

3
推荐指数
1
解决办法
1777
查看次数

标签 统计

html ×2

javascript ×2

jquery ×2

knockout.js ×2

knockout-2.0 ×1