2014-10-09 53 views
0

屬性的值,我有一個非常簡單的文件,這使得像這樣的鉛筆圖片:Knockout.js:更改可觀察到的值不會改變HTML

define(['durandal/events', 'knockout'], function (events, ko) { 

    var pencilVM= function() { 
    this.pencilimagepath = ko.observable("img/pencil.png"); 
    }; 

    return pencilVM; 
}); 

和HTML:

<div> 
<img data-bind="attr: {src: pencilimagepath}" /> 
</div> 

現在,當我將圖像的名稱從pencil.png更改爲someImg.png時,瀏覽器中呈現的最終html未更新。它依然保持爲「pencil.png」

+0

你可以發佈你的代碼在哪裏設置pencilimagepath嗎? – nemesv 2014-10-09 06:25:01

+0

@nemesv我發佈了設置pencilimagepath的js。 – s4san 2014-10-09 06:26:02

+0

你如何做更新:'vm.pencilimagepath(「新路徑」)或'vm.pencilimagepage =「新路徑」'? – Tuan 2014-10-09 06:33:50

回答

1

我認爲瀏覽器緩存圖像。

只需將時間戳添加到您的新圖像源

var d = new Date(); 
this.pencilimagepath("img/someImg.png" + d.getTime()); 

希望有所幫助。

相關問題