2017-04-27 159 views
1

我有Div binding圖像標記,它正在工作,但是當圖像值爲空時。Knockout js隱藏圖像div

我想隱藏整個DIV,但是當圖像值爲null我得到的空白邊框框,我需要刪除also.how使用knockout js

<ul id="user-listview" data-bind="foreach:dataItems"> 
    <li> 
     <div> 
     <span data-bind="text:UserID" ></span> 
      <span data-bind="text:UserName" ></span> 
      <span data-bind="text:mobilenumber"></span> 
     </div> 
     <div id="divuserImage"> 
     <span data-bind="text:ImageID" style="display:none"></span> 
     <img style="height: 200px;width: 300px;margin-top: 10px;" data-bind="attr: { src:userImageUrl }" /> 
    </div> 
    </li> 
</ul> 

function UserModel(data){ 
    self=this; 
    self.UserID=ko.observable(data.UserID) 
    self.UserName=ko.observable(data.UserName) 
    self.mobilenumber=ko.observable(data.mobilenumber) 
    self.userImageUrl=ko.observable(data.userimage) 
    self.ImageID=ko.observable(data.ImageID) 
} 

回答

1

試試這個,如果你還沒有

<ul id="user-listview" data-bind="foreach:dataItems"> 
    <li> 
     <div> 
      <span data-bind="text:UserID" ></span> 
      <span data-bind="text:UserName" ></span> 
      <span data-bind="text:mobilenumber"></span> 
     </div> 
     <div id="divuserImage" data-bind="visible: userImageUrl() && userImageUrl() != ' '"> 
      <span data-bind="text:ImageID" style="display:none"></span> 
      <img style="height: 200px;width: 300px;margin-top: 10px;" data-bind="attr: { src:userImageUrl }" /> 
     </div> 
    </li> 
</ul> 

我只添加的數據綁定=「可見: userImageUrl()「在div標記

在你的js模型中,你還需要一個self.ImageID屬性(或者如果你以某種方式將它添加到dataItems中的每個元素)。例如:

function UserModel(data){ 
    self=this; 
    self.UserID=ko.observable(data.UserID) 
    self.UserName=ko.observable(data.UserName) 
    self.mobilenumber=ko.observable(data.mobilenumber) 
    self.userImageUrl=ko.observable(data.userimage) 
    self.ImageID=ko.observable(data.ImageID) 
} 
+0

我試過了,沒有爲我工作,如果值爲空也取其空白寬度和高度的白色邊框 –

+0

是問題中的代碼所有你的代碼這個div還是有什麼其他你正在做的操縱div? – UberGrunk

+0

它在foreach循環列表中的綁定,每個列表值將有不同的圖像,如果圖像有價值,它應該disaply否則它應該隱藏整個「divuserImage」 –

0

您可以使用CSS來做到這存檔這個。提供瞭如果在SRC心不是任何東西,如果空,你可以簡單地使用:

#divuserImage img[src=""] { 
    display: none; 
} 
+0

沒有爲我工作 –

+0

@kittysarvaj什麼是在src? – Deckerz

+0

src =「」但我綁定列表中的圖像 –