2014-01-02 5 views
0

У меня есть страница ASPX с выпадающим списком, связанным с Knockout.JS. На загрузке страницы я проверяю url для параметра и обновляю представление, если это параметр, который вы можете увидеть в моем API. Я изменил API, чтобы оставить ненужный код, потому что он возвращает требуемое значение. Моя проблема в том, что я не могу заставить мой наблюдаемый SelectedView обновиться до «Notes». Любой совет?Обновление нокаута Наблюдаемое и раскрывающееся меню Выберите

ASPX:

 <asp:DropDownList runat="server" data-bind="value: SelectedView" id="viewselect"> 
      <asp:ListItem>Select A View</asp:ListItem> 
      <asp:ListItem>Notes</asp:ListItem> 
      <asp:ListItem>Credit Manager</asp:ListItem> 
     </asp:DropDownList> 

вид Модель:

function CustomerViewModel() { 

    this.self = this; 
    self.SelectedCustomer = ko.observable(); 
    self.SelectedView = ko.observable(); 
} 

API:

$(document).ready(function() { 

var custnmbr = "123456"; 

if (custnmbr != "") { 
    var notes = "Notes"; 
    self.SelectedView(notes); 
} 

}); 
+0

Можете ли вы пожалуйста, напишите Результат получился HTML –

ответ

0

Я думаю, если вы посмотрите в консоли вы получите сообщение об ошибке:

Uncaught TypeError: Object [object global] has no method 'SelectedView' 

Потому что в вашем $(document).ready вы используете объект self который определен только внутри CustomerViewModel().

Чтобы решить эту проблему, вам нужно вызвать .SelectedView(notes); на экземпляре объекта вы передаете в ko.applyBindings,

UPDATE

, например:

function CustomerViewModel() { 
    this.self = this; 
    self.SelectedCustomer = ko.observable(); 
    self.SelectedView = ko.observable(); 
} 
var customerObj=new CustomerViewModel(); 
ko.applyBindings(customerObj); 

// later in your code. 
customerObj.SelectedView(notes); 
+0

Хорошо. , , Я возвращаю это return ko.applyBindings (новый CustomerViewModel.SelectedView (примечания)); , но теперь я получаю ошибку Console Uncaught TypeError: undefined не является функцией – user3147424

+0

извините, я не понял вашу точку зрения? –

+0

как вы предлагаете позвонить .SelectedView (примечания) – user3147424

Смежные вопросы