2013-05-02 2 views
0

ниже - фрагмент моего HTML, содержащий некоторые привязки нокаута. Если первый/внешний цикл foreach проходит через массив, называемый tradesObservableArray, который содержит ключ с именем «ThreadID», как я могу получить это значение, где у меня есть: ** $ root.ThreadID **? Обратите внимание, что $ root.ThreadID находится во внутреннем цикле foreach.knockout - получить значение из родительского массива

В принципе, $ root.ThreadID возвращает неопределенные. Я также пробовал $ parent.ThreadID с тем же результатом.

Заранее спасибо ...

<div id="tradesThread" data-bind="foreach: tradesObservableArray"> 

      <table> 
       <tbody data-bind="foreach: $root.filesObservableArray"> 
        <tr id="tradeRow"> 
         <td data-bind="visible: $root.tradeRowFiles(**$root.ThreadID**, CommentID)"><span data-bind="text: FileName"></span></td> 
        </tr> 
       </tbody> 
      </table> 
      </div> 
+0

Что тип данных 'ThreadID'? –

ответ

1

ThreadID Если это наблюдаемый объект, то вы можете получить его значение по телефону:

$parent.ThreadID() 
+0

Привет! Когда я пытаюсь $ parent.Thread(), я получаю следующую ошибку: $ parent.ThreadID не является функцией. В принципе, внутри tradesObservableArray у меня есть куча ключей/значений. Одним из ключей является ThreadID. Кроме того, тип данных - INT. – nanonerd

+0

Если это действительно просто числовое значение, а не наблюдаемое, тогда '$ parent.ThreadID' должен сделать трюк. Не могли бы вы настроить jsfiddle, чтобы показать свою ошибку с реальными данными? –

+0

Arghh, нашел проблему. Это «$ parent.threadID» ... маленький t, а не капитал ... извините за то, что Ek0nomik ... STACK OVERFLOW: не стесняйтесь удалять эту тему ... – nanonerd