javascript - 如何绑定(bind)knockout viewmodel动态加载页面?

标签 javascript jquery knockout.js

我使用 jquery.load 函数动态加载页面,但加载的页面未绑定(bind)到 viewModel?

应用程序.js

function viewModel(){
    var self = this;
    self.users = ko.observable();

    Sammy(function() {
        this.get("#/users",function() {
            $.get("/api/users",function(data){
                self.users(data);
            });
            $("#content").load("pages/users.html");
        });
    }).run("#/");
}

ko.applyBindings(new viewModel());

index.html:

<html>
    <body>
        <div id="content"></div>
        <script src="statics/js/lib/jquery-1.8.2.js"></script>
        <script src="statics/js/lib/knockout-2.2.0.debug.js"></script>
        <script src="statics/js/lib/knockout.mapping.js"></script>
        <script src="statics/js/lib/sammy.js"></script>
        <script src="statics/js/lib/app.js"></script>
    </body>
</html>

页面/users.html

<ul data-bind="foreach: users">
    <li><span data-bind="text: fullName"></span></li>
</ul>

最佳答案

$("#content").load("/pages/users.html", function () {
   ko.applyBindings(new viewModel());
}

应该这样做...

关于javascript - 如何绑定(bind)knockout viewmodel动态加载页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13252532/

相关文章:

javascript - 当 # 已经添加到 url 时,如何使用 javascript 或 jquery 将焦点设置在 div 上?

javascript - 使用 js 更改 url 参数,无需在单击按钮时重新加载页面

html - 单击表格行时显示自定义模式

javascript - 即使页面完全渲染后,浏览器仍显示一半进度条

javascript - 动态加载时如何检测jquery是否已加载

javascript - AngularJS在ng-repeat中调用对象的函数

javascript - jQuery 在脚本中创建类

javascript - 删除单击的元素然后应用 css?

javascript - knockout.js 库中 exportProperty 函数的用途是什么?

javascript - knockout decorateInputElement配置