Knockout JS:IE8中的模板绑定问题

时间:2014-07-01 06:35:11

标签: javascript jquery knockout.js internet-explorer-8

当我使用Knockout模板绑定时,我在IE8中收到以下错误

  

第58行第28行未处理的例外情况   http://www.example.com/Scripts/knockout-2.2.0.js   0x800a01b6 - Microsoft JScript运行时错误:对象不支持此属性   或方法

我的代码:

HTML

<div data-bind="template :  { name: 'person-template', foreach: people }"></div>

<script type="text/html" id="person-template">
    <h3 data-bind="text: name"></h3>
    <p>Credits: <span data-bind="text: credits"></span></p>
</script>

脚本

var UserTabViewModel = function () {
    var self = this;    
    self.people = [{ name: 'Franklin', credits: 250 }, 
                   { name: 'Mario', credits: 5800 }];
}

$(document).ready(function () {
    var userTabViewModel = new UserTabViewModel();
    ko.applyBindings(userTabViewModel);
});

由于我只安装了IE8,因此未在任何其他浏览器中进行测试。

1 个答案:

答案 0 :(得分:2)

您的代码

var UserTabViewModel = function () {
    var self = this;    
    self.people = [{ name: 'Franklin', credits: 250 }, 
                   { name: 'Mario', credits: 5800 }];
}

$(document).ready(function () {
    var userTabViewModel = new UserTabViewModel();
    ko.applyBindings(userTabViewModel);
});

与淘汰赛2.2.1一起运作

http://jsfiddle.net/rsma7/1/

但是因为淘汰2.1.0而失败

http://jsfiddle.net/rsma7/2/

尝试将您的淘汰赛更新为2.2.1。实际上似乎only corrects这个bug! (错误在clean