数据绑定的h1标签未显示(knockoutjs)

时间:2012-10-22 18:24:40

标签: asp.net-mvc html5 twitter-bootstrap knockout.js

我在KO中有一个简单的视图模型:

        function TemplateFile(name, fileName) {
            var self = this;
            self.name = name;
            self.fileName = fileName;
        }

        var layoutViewModel = {
            loggedInUser: ko.observable("user"),
            templateFiles: ko.observableArray([
                // some initial entries...
            ]),
            contentHeading: ko.observable("Content"),
            // some other things...
        };

        $(function () { ko.applyBindings(layoutViewModel); });

数据绑定在我的_Layout.cshtml局部视图中的各个点上,其中大部分工作正常。除了这个......

        <!-- Page content -->
        <div class="container-fluid" 
             style="background-color: white; border-radius: 10px; margin: 20px; min-height: 400px; height: auto !important; height: 400px">
            <div class="row-fluid">
                <div class="span12">
                    <h1 data-bind="text: contentHeading" style="color: darkgray;" />
                </div>
            </div>
            <div class="row-fluid">
                <div class="span12">
                    @RenderBody()
                </div>
            </div>
        </div>

(忽略内联CSS,即将修复;)

绑定到h1的“contentHeading”数据根本没有显示出来。我已经尝试了好几件事......

  • 关闭绑定的数据:仍然没有显示
  • 将标签移动到页面的不同部分:一些工作,一些随机没有
  • 对虚拟文本值进行硬编码:此DID显示

所以,鉴于这些结果,我认为可能存在一些问题,如何加载一些DOM元素,可能是因为我使用的是Twitter Bootstrap?

我在这里不知所措,似乎无法从其他任何人那里找到类似的问题。有什么建议吗?

<ul class="dropdown-menu" data-bind="foreach: templateFiles">
    <li>
        <a href="#" data-bind="attr: { title: fileName}" />
        <span data-bind="text: name" />
    </li>
</ul>

1 个答案:

答案 0 :(得分:0)

<ul class="dropdown-menu" data-bind="foreach: templateFiles">
    <li>
        <a href="#" data-bind="attr: { title: fileName}" />
       <span data-bind="text: name" />
  </li>
</ul>

这甚至与击倒或自举没有关系。我只是标签不匹配。 D'哦。

结束这个问题!感谢有关寻找内容的提示:)