2013-05-10 3 views
0

내 코드에 일부 데이터를 표시하는 녹아웃 테이블이 있습니다.Knockout.js 테이블 및 요청시 드롭 다운 목록

<tbody data-bind="foreach: currentList"> 
    <tr> 
     <td data-bind="text: someString, click: getDetails"></td> 
     <td data-bind="text: someOtherString, click: getList"></td> 
    </tr> 
</tbody> 

이제 두 개의 열이 표시되고 두 번째 열에는 처음에는 드롭 다운이없는 일반 텍스트로 표시됩니다. 두 번째 열의 필드를 클릭하고 저장 한 데이터 목록을 사용하여 즉시 드롭 다운을 만들 수 있기를 원합니다. 나는 jquery와 녹아웃으로 이것을 달성하는 방법을 전혀 모른다. 어떤 도움도 감사하겠다.

답변

1

당신은 셀에 더 많은 물건을 가지고 플래그가 true로 설정되어있는 경우에 표시하는 바인딩 "만일"사용할 수 있습니다 :

<tbody data-bind="foreach: currentList"> 
    <tr> 
     <td data-bind="text: someString, click: getDetails"></td> 
     <td data-bind="text: someOtherString, click: getList"> 
      <div data-bind="if: showDropdown, template: { name: 'options-template', data: $root.options}"> 
      </div> 
     </td> 
    </tr> 
</tbody> 

그래서 getList 기능은 참으로 showDropdown 속성을 설정합니다. 이 셀 내부의 모든 클릭이이 이벤트를 발생시키기 때문에이 클릭 이벤트를 셀 자체에 바인딩하는 것은 좋지 않습니다.

드롭 다운 옵션의 경우보기 모델 root에서 템플릿 및 데이터를 options 속성으로 사용할 수 있습니다. 이것은 단지 샘플입니다.

+0

어쨌든 내가 행동에서 볼 수 있도록 작은 바이올린을 만들 수 있도록 설득 할 수 있었습니까? 임이 문제를 일으키고있어. 고마워요. –

+0

시작해야합니다 : http://jsfiddle.net/tkirda/fCChq/ –