javascript - 如何在 ASP.NET MVC5 中正确包含 jQuery 和 knockout.js

标签 javascript jquery knockout.js asp.net-mvc-5

我在 VisualStudio 2017 中创建了一个 MVC 项目。

编辑: 我将 knockout a 和 jQuery 更新到最新版本。

我已经在底部包含了我的 .js 文件,并且在我尝试使用 jQuery 之前它工作正常。

在我的 .js 文件中:

function job(name) {
    return {
        name: ko.observable(name)
    };
}

var viewModel = {
    jobs: ko.observableArray([new job("johnny"), new job("anderson")]),

    addJob: function () {
        this.jobs.push(new job("Another job"));
    },
}
ko.applyBindings(viewModel);

标记:

<script src="~/Scripts/jquery-3.3.1.min.js"></script>
<script src="~/Scripts/knockout-3.4.2.js" type="text/javascript"></script>


<h3>Jobs:</h3>
<ul data-bind="template: {name:'jobsTemplate', foreach:jobs}"></ul>

<script id="jobsTemplate" type="text/html">
    <li>${ $data.name }</li>
</script>

页面输出 2 <li>文本 ${ $data.name } 对我来说意味着不包括 jQuery。我可以在控制台中使用 jQuery。

感谢您的帮助!

最佳答案

Knockout 模板通过常规的knockout 数据绑定(bind)来工作。

<ul data-bind="template: {name:'jobsTemplate', foreach: jobs}"></ul>

<script id="jobsTemplate" type="text/html">
  <li data-bind="text: name"></li>
</script>

关于javascript - 如何在 ASP.NET MVC5 中正确包含 jQuery 和 knockout.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49058196/

相关文章:

javascript - 从 typescript 文件发出导出功能

javascript - JQuery + Prototype.js 潜在冲突

knockout.js - "TypeError: object is not a function"使用 knockout 和 Breeze 时

javascript - 简单值绑定(bind)到选择标签

javascript - KnockoutJS 绑定(bind)在 IE8 中失败

javascript - Angularjs 和 jQuery 移动 slider 指令

JavaScript 对象迭代

javascript - 来自 AngularJS 的 $success 回调函数

javascript - 存储在变量中的 HTML 中的 jQuery 更改属性

javascript - 将图表类型参数传递给自定义函数作为谷歌图表函数