如何在ASP.NET MVC5中正确包含jQuery与knockout.js

问题描述 投票:0回答:1

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

编辑:我更新了淘汰赛和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。

谢谢你的帮助!

javascript jquery knockout.js asp.net-mvc-5
1个回答
1
投票

敲除模板通过常规敲除数据绑定工作。

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

<script id="jobsTemplate" type="text/html">
  <li data-bind="text: name"></li>
</script>
© www.soinside.com 2019 - 2024. All rights reserved.