2013-05-08 87 views
2

我有一個網格,我希望第一行不顯示。我有以下標籤來完成此操作:

<div data-bind="visible: $index">....</div> 

不幸的是,我沒有看到style =「display:none;」在標籤中顯示,果然,div顯示。

順便說一句,我也試過這一點,它沒有工作之一:

<div data-bind="style: { display: $index ? 'block' : 'none' }">....</div> 

我必須失去了一些東西很簡單。任何幫助在這裏將不勝感激。

+0

你能發佈完整的網格html代碼嗎? – 2013-05-08 20:46:12

回答

8

$index是一個可觀察的,所以現在你的綁定只是檢查函數是否未定義或爲空,這導致了真正的...因此,你總是看到第一行。改變你的綁定:

<div data-bind="visible: $index() > 0">....</div> 
+0

感謝您的回覆。我可以發誓,我在Knockout文檔中看到可見的是能夠以不同方式處理命令,並且我不必指定該功能。以下是我使用 'style:{display:$ index()> 0? 'block':'none'}' – 2013-05-16 13:06:54

+0

@MikeHomol當你需要返回並檢查存儲在你的observable中的值作爲表達式的一部分時,你必須指定括號,例如在這種情況下的布爾表達式。 – 2018-02-22 02:13:14

0

好吧,看起來像這個問題是一個單獨的腳本,爲這個div中設置的類之一設置不透明度爲1。所以我不得不將類添加到數據綁定。