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 내부에서 값이 입력 필드에 사용됩니다.
그러나 내가 얻은 것은 화면에 앉아있는 외로운 입력란 하나뿐입니다. 그래서 뭔가 내 코드/내 이해가 잘못되어야합니다. 아무도 내게 말할 수 있습니까?
당신이 제공 한 코드에 아무런 문제가없는 것 같습니다. - 여기에 Fiddle이 있습니다. (http://jsfiddle.net/XN5MM/) 코드 복사/붙여 넣기를하면 입력 상자가 2x2 격자로 나타납니다. 당신이 제공하지 않은 코드에는 뭔가 잘못된 것이 있습니다. – Mark