IE中的Knockout JS 2.0 Binding Parse Error

时间:2012-01-31 20:20:53

标签: javascript internet-explorer knockout.js

有人可以告诉我这个http://jsfiddle.net/Yp8Bz/有什么问题吗?它在Chrome / Firefox中运行良好,但在IE 8中我收到以下错误:

Message: Unable to parse bindings.
Message: SyntaxError: Expected identifier, string or number;
Bindings value: click: blah, attr: {class: 'Hi'}
Line: 38
Char: 359
Code: 0
URI: http://cdnjs.cloudflare.com/ajax/libs/knockout/2.0.0/knockout-min.js

2 个答案:

答案 0 :(得分:67)

class放在引号中。我在使用保留字时遇到了同样的问题。

attr: {'class': 'Hi'}

答案 1 :(得分:4)

Daniel A. White已经指出了您的具体问题,但如果您定期使用CSS类,我建议您使用css绑定。

http://knockoutjs.com/documentation/css-binding.html

<div data-bind="css: { profitWarning: currentProfit() < 0 }">
   Profit Information
</div>

<script type="text/javascript">
    var viewModel = {
        currentProfit: ko.observable(150000) // Positive value, so initially we don't apply the "profitWarning" class
    };
    viewModel.currentProfit(-50); // Causes the "profitWarning" class to be applied
</script>