2014-05-18 3 views
0

knockoutJs의 관측 가능한 배열 기능을 사용하여 html로 입력 필드 테이블을 만들고 싶습니다. 내 HTML 파일로서, 나는이 가지고 :KnockoutJs : 테이블에 2 차원 관찰 가능 배열

녹아웃 파일로

(이 전체 HTML,하지만 관련 일부가 아닙니다 물론.)

<table data-bind="foreach: textFields"> 
    <tr data-bind="foreach: $data"> 
     <td><input data-bind="value: $data"></td> 
    </tr> 
</table> 

,이 가지고 :

function MatrixViewModel(){ 
    var self = this; 
    self.textFields = ko.observableArray([[0, 0], [0, 0]]); 
} 
ko.applyBindings(new MatrixViewModel()); 

내가 이해 한 바에 따르면, 테이블이 textField 배열의 각 배열 즉, [0, 0]과 [0, 0]을 가져 오면 어떻게 될까요? 그런 다음 각각에 대해 테이블 ​​행이 만들어집니다. 이 테이블 행은 각 값, 즉 0과 0을 취해 각각에 대해 td를 만듭니다. 그런 다음 td 내부에서 값이 입력 필드에 사용됩니다.

그러나 내가 얻은 것은 화면에 앉아있는 외로운 입력란 하나뿐입니다. 그래서 뭔가 내 코드/내 이해가 잘못되어야합니다. 아무도 내게 말할 수 있습니까?

+4

당신이 제공 한 코드에 아무런 문제가없는 것 같습니다. - 여기에 Fiddle이 있습니다. (http://jsfiddle.net/XN5MM/) 코드 복사/붙여 넣기를하면 입력 상자가 2x2 격자로 나타납니다. 당신이 제공하지 않은 코드에는 뭔가 잘못된 것이 있습니다. – Mark

답변

0

문제는 스크립트 태그의 배치라는 것을 알았습니다. 나는 전에 그들을 물리 치지 않아야했다.

+1

이 질문에 답이 표시되지 않도록 대답을 수락 할 수 있습니까? –

+0

내가 대답 한 지 불과 2 일 후에 만 ​​할 수 있습니다. – tomet

+0

죄송합니다. 잘 모르겠습니다. –