0

サブビューがほとんどないシェルビューがありました-これはそのように見え、正常に動作します。

<div id="shellView" style="display: none;">
<div id="tabView" data-bind="with: Tab(), visible: State() === 'Tab'">
    @Html.Partial("Tab")
</div>
<div id="tab2View" data-bind="with: Tab2(), visible: State() === 'Tab2'">
    @Html.Partial("Tab")
</div>

問題は、タブ間で切り替えるときです(クロムのみ)。1 つのタブには、ノックアウトにバインドされた画像のリストがあります。すべての画像には、サーバーまたはクライアント サーバーにリダイレクトして画像をダウンロードするコントローラーのアクション (RedirectResult) への src がありました。

   [HttpGet]
    public RedirectResult DynUrl(int id, string size)

この時点で 2 番目のタブは空ですが、Google Chrome に切り替えると、すべての DynUrl の再ダウンロード画像 (現在ダウンロードされているもの) にリクエストが送信され、非表示になります。

ノックアウト 2.1.0 を使用しています。

4

1 に答える 1

1

のように動作するはずです

<div id="shellView" style="display: none;">
<!-- ko with: Tab -->
<div id="tabView" data-bind="attr: {display: isVisible}">
    @Html.Partial("Tab")
</div>
<!-- /ko -->
<!-- ko with: Tab2 -->
<div id="tab2View" data-bind="attr: {display: isVisible}">
    @Html.Partial("Tab")
</div>
<!-- /ko -->

そして置く

this.isVisible = ko.computed(function(){
if(self.visibleState())return 'block';
else return 'none';
});

タブビューモデルで

于 2013-02-18T10:53:49.670 に答える