2013-08-30 43 views
0

我試圖讓呈現取決於floatval價值的observableArray我遍歷有條件的經營者在評論floatval

的屬性裏面當我呈現本身的價值它的作品元素的條件語句:

<span data-bind="text: stinger.points"></span> 

對於每個在observableArray我看到正確的值,例如 「3.2」。

繼承人我的實際發言,但他們沒有被顯示在計算HTML:

<!-- ko if: stinger.points >1.49 && stinger.points <2.49 --> 
    <div>1.5 - 2.48</div>  
<!-- /ko -->    
<!-- ko if: stinger.points >2.49 && stinger.points <3.49 --> 
    <div>2.5 - 3.48</div> 
<!-- /ko -->  
<!-- ko if: stinger.points >3.49 && stinger.points <4.49 --> 
    <div>3.5 - 4.48</div> 
<!-- /ko --> 
<!-- ko if: stinger.points >4.49 && stinger.points <5.1 --> 
    <div>4.5 - 5</div>  
<!-- /ko --> 
<!-- ko if: stinger.points <0.1 --> 
    <div >0</div>   
<!-- /ko --> 

或者我可以接近這樣的:

<div data-bind="visible: rating.points > 1.2 && rating.points < 3.4">between 1.3 - 3.5</div> 

但是,多數民衆贊成也沒有工作,像以上。

我在做什麼錯?如何糾正?

+0

是stinger.points一個ko.observable? – nemesv

+0

不是它屬性的一個ko.observableArray([]) –

回答

2

當您在表達式中使用observable時,必須通過添加()將其解包。更新您的代碼如下:

<!-- ko if: stinger.points() >1.49 && stinger.points() <2.49 --> 
    <div>1.5 - 2.48</div>  
<!-- /ko -->    
<!-- ko if: stinger.points() >2.49 && stinger.points() <3.49 --> 
    <div>2.5 - 3.48</div> 
<!-- /ko -->  
<!-- ko if: stinger.points() >3.49 && stinger.points() <4.49 --> 
    <div>3.5 - 4.48</div> 
<!-- /ko --> 
<!-- ko if: stinger.points() >4.49 && stinger.points() <5.1 --> 
    <div>4.5 - 5</div>  
<!-- /ko --> 
<!-- ko if: stinger.points() <0.1 --> 
    <div >0</div>   
<!-- /ko --> 
+0

真棒多數民衆贊成它,我是非常新的淘汰賽和有點困惑這個function7對象的東西感謝很多 –

+1

但你應該真的將這些規則移動到在視圖模型上計算 – Anders