2012-09-03 69 views
0

,當我需要從數據庫中獲取的值後,頁面加載完成且運行將填充取決於已檢索值幾個下拉菜單功能,當值設定運行的功能。就像表單控件的更改事件一樣。如何利用基因敲除

我怎樣才能做到這一點使用Knockout.js?

謝謝。

回答

0

這是一個快速而骯髒的例子。這個想法是:

  1. 設置一個可觀察的數組,將爲您的下拉菜單保存數據。最初,該數組將爲空,並且您的下拉列表中將沒有內容。
  2. 使用getJSON從您的服務器檢索數據。
  3. getJSON的回調中填寫您的下拉列表。如果我理解正確,您將不會檢索下拉列表中的實際內容,而是可以幫助您確定顯示哪些選項的其他信息。我將這個想法融入了這個例子。

順便說一句,國家不必是一個字符串數組。它可以是一個複雜的JS對象數組。但是,您需要擴大與optionsTextoptionsValuedata-bind="options: ..."綁定,以指示您的對象的屬性是標籤和值。 Look here for more details.

var CompanyViewModel = function() 
{ 
    var self = this; 

    self.Countries = ko.observableArray(); 

    $.getJSON('api/countries', function(data) { 
     if(data == 1) 
     { 
      self.Countries(['France', 'Germany', 'Spain']) 
     } else if(data == 2) 
     { 
      self.Countries(['Holland', 'Belgium', 'Luxemburg']); 
     } 
    }); 
}