击倒的MVVM仅在IE中工作

时间:2011-06-29 09:26:05

标签: mvvm knockout.js

我刚刚开始使用Knockout,并且正在按照教程进行操作。虽然它就像IE上的魅力一样,但它似乎没有出现在任何其他浏览器上,我看不出我做错了什么。

这是页面标记

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <link href="/Content/Site.css" rel="stylesheet" type="text/css" />
    <link href="/Content/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" />
</head>

<body>
<table>
    <tbody>
        <tr>
            <td><label for="Text">Text</label></td>
            <td>
                <input type="text" id="Text" name="Text" data-bind="text:Text"/>
            </td>
        </tr>
    </tbody>
</table>
</body>
</html>

<script src="/Scripts/jquery-1.5.min.js" type="text/javascript"></script>
<script src="/Scripts/knockout-1.2.0.js" type="text/javascript"></script>
<script src="/Scripts/knockout.mapping.js" type="text/javascript" ></script>
<script type="text/javascript">

    var model = {"Text":"Test Text"};
    ko.applyBindings(model);

</script>

非常感谢您的帮助

更新

发现了我的错误,这很简单。而不是删除问题,我会留下它,万一其他人遇到这个问题。 问题是IE再次出现!而它似乎在IE中工作的事实使得其他人看起来好像是错误的,事实上,IE在解释绑定表达方面有点松懈。

<input type="text" id="Details_CompanyName" name="Details.CompanyName" data-bind="text:Details.CompanyName"/>

......可能

<input type="text" id="Details_CompanyName" name="Details.CompanyName" data-bind="value:Details.CompanyName"/>

1 个答案:

答案 0 :(得分:0)

这看起来可能是一个错误?

查看herehere了解简单更改的jsFiddle示例