1

私は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 が表示されます

これらの結果を考えると、おそらく Twitter Bootstrap を使用しているために、一部の DOM 要素のロード方法に問題があるのではないかと考えています。

私はここで途方に暮れており、他の誰からも同様の問題を見つけることができないようです。助言がありますか?

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

1 に答える 1

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

これは、ノックアウトやブートストラップとは関係ありません。タグの不一致があるだけです。ああ。

この質問を締めくくります!何を探すべきかについてのヒントをありがとう:)

于 2012-10-23T13:23:16.097 に答える