2013-07-30 117 views
-2

我對淘汰賽相當陌生,而且還很難將自己的頭圍繞自定義綁定以及何時適當地使用它們。我有一個對話框,我想在後端創建一個視圖模型,並執行一些相當繁重的DOM操作來顯示ajax調用的結果是否成功,這是否適合於自定義數據綁定來處理?我有它的設置,以便有三個div與一個處理加載,一個成功和一個失敗,我只是隱藏/顯示它們的狀態,基於ajax調用,但我相信有更好的方法...成功/失敗的自定義綁定

謝謝!

+0

所以,你知道,廣泛的問題是關於StackOverflow的主題(例如,要求「更好的方法」)。請澄清你的問題,以「使用更少的元素的方式」,「簡化視圖模型的方法」,「可輕鬆重複使用的方式」等。 – FakeRainBrigand

+1

(當您編輯它時,我將刪除-1和採取刺探回答) – FakeRainBrigand

回答

0

你可以使用任何你想要的自定義綁定,但我會建議閱讀文檔多一點的自定義綁定。你試圖做的事情可以通過某種失敗指標輕鬆獲得,例如使用包含警報的無容器綁定。當單擊警報時,您可以將observable設置爲false。這是我可以想到的最簡單的方式來處理您面臨的情況,同時利用Knockout強大的jQuery類型DOM操作替代。

在你的JavaScript -

// Create an observable and start it out as false 
var haveErrors = ko.observable(false); 

function doSomething() { 
    $.ajax({ 
    // Your ajax call 
     error: function(err) { 
      haveErrors(true); 
    }); 
} 

而在你的HTML -

<!-- ko if: haveErrors() === true --> 
<div class="alert">There are errors!!!</div> 
<!-- /ko --> 

你可以把它很多更進一步,顯示這些錯誤或做更多的事情,但就像我說的,閱讀文檔並獲取它的一個掛起,而不是聽我的話!