2013-04-02 2 views
0

Im new с нокаутом, и я пытаюсь показать все предприятия в моей базе данных в списке желаний работает очень хорошо, но я также хочу показать все контакты для каждого предприятия, которые все еще не работают.связывание внутри связывания с нокаутом

Entreprise и контакты имеют отношение -> NumberEnterprise

<tbody id="list" data-bind="foreach: Enterprise"> 
<tr class="line"> 
<td data-bind="text: NameEnterprise"></td> 
<td data-bind="text: PrioPhone"></td> 
<td data-bind="with: Enterprise"></td> 
<td data-bind="Contacts, text:FullName, value : $parent.NumberEnterprise"></td> 
</tr> 
</tbody> 

Спасибо за помощь;)

ответ

1

Ваш DataBind data-bind="Contacts, недействителен, насколько мне известно.

Чтобы сделать то, что вы хотите сделать, вы находитесь на правильном пути. Вот пример модели:

function HolderObject(enterPriseArray){ 
    var self = this; 
    self.enterprise = ko.observableArray([]); 

    _.each(enterPriseArray, function(e){ 
      self.enterprise.push(new SomeObject(e)); 
    }); 

    ko.applybindings(self) // probably bind it to a div tag somewhere 
} 

function SomeObject(data){ 
    var self = this; 
    self.nameEnterprise = ko.observable(); 
    self.prioPhone = ko.observable(); 
    self.NumberEnterprise = ko.observable(); 
    self.EnterPrise = ko.observable(new Enterprise(data.fullName)); 
} 

function Enterprise(fullName){ 
    var self = this; 
    self.fullName = ko.observable(fullName); 
} 

Затем обновите таблицу, чтобы быть чем-то вроде

<tbody id="list" data-bind="foreach: enterprise"> 
    <tr class="line"> 
     <td data-bind="text: nameEnterprise "></td> 
     <td data-bind="text: prioPhone "></td> 
     <td><span data-bind="text:FullName"></span><span data-bind="value: $parent.NumberEnterprise"></span></td> 
    </tr> 
</tbody> 
Смежные вопросы