2013-12-03 5 views
-1

foreach 목록의 여러 텍스트 행에 tabindex를 적용합니다. 각 행 끝에 버튼이 있습니다. 각 행이 다음 행 등으로 진행할 때 왼쪽에서 오른쪽으로 이동하려면 탭 순서가 필요합니다.Knockout.js foreach의 Tabindex

어떻게 진행 행이 진행 행보다 높은 번호로 시작하게 할 수 있습니까? 예를 : 나는 기대 : 행 1 : tabIndex를 1,2,3 행 2 : tabIndex를 4,5,6

는하지만 점점 오전 (시작 2 행 1 예상보다 작) : 행 1 :의 tabindex 1 2, 3 행 2 : tabIndex를 3,4,5

<ul data-bind="foreach: myForEach"> 
    <li> 
     <div class="span11"> 
     <textarea rows="3" data-bind="attr: { tabindex: ($index() + 1) }"></textarea> 
     </div> 

     <div class="span11"> 
     <textarea rows="3" data-bind="attr: { tabindex: ($index() + 2) }"></textarea> 
     </div> 

     <a data-bind="attr: { tabindex: ($index() + 3) }">delete row</a> 

    </li> 
    </ul> 

답변

2

당신은 3으로 인덱스를 곱해야합니다

data-bind="attr: { tabindex: ($index() * 3 + [index]) }" 

전체 코드 :

<ul data-bind="foreach: myForEach"> 
    <li> 
     <div class="span11"> 
      <textarea rows="3" data-bind="attr: { tabindex: ($index() * 3 + 1) }"></textarea> 
     </div> 
     <div class="span11"> 
      <textarea rows="3" data-bind="attr: { tabindex: ($index() * 3 + 2) }"></textarea> 
     </div> 
     <a data-bind="attr: { tabindex: ($index() * 3 + 3) }">delete row</a> 
    </li> 
</ul> 
+0

그게 효과가 있습니다. 3은 무엇을 곱합니까? – simple

+0

컨트롤의 양입니다. – alexmac