2012-09-09 3 views
1

표 행 안에 양식이있는 것이 맞지 않습니다. 이 일을하는 데는 실용적인 이유가있는 것 같습니다.html - 양식 표 - 유효하지 않은 표식

저는 각 행을 개별적으로 편집 할 수 있기를 원합니다. (예 : ajax 등) 각각의 행은 고유 한 형식입니다.

다음은 기능적으로 테이블과 양식을 배치해야하지만 마크 업은 유효하지 않습니다. 게다가, haml/erb는 실제로 이런 식으로 마크 업을 처리하지 않을 것입니다 (폼은 첫 번째 셀 내에서 열리고 닫힙니다).

display : table-cell 등을 사용할 수는 있지만 표시되는 데이터는 의미 론적으로 테이블에 속한다고 생각합니다.

적절한 마크 업과 함께 동일한 기능을 수행하려면 어떻게해야합니까?

<table> 
<thead> 
    <tr> 
    <th>id</th> 
    <th>name</th> 
    <th>email</th> 
    <th>phone</th> 
    <th>address</th> 
    </tr> 
</thead> 
<tbody> 
    <tr> 
    <%= form_for person do |f| %> 
     <td><%= id %></td> 
     <td><%= f.text_field :name%></td> 
     <td>...</td> 
     <td>...</td> 
     <td>...</td> 
    <% end %> 
    </tr> 
</tbody> 
</table> 

답변

2
<table> 
<thead> 
    <tr> 
    <th>id</th> 
    <th>name</th> 
    <th>email</th> 
    <th>phone</th> 
    <th>address</th> 
    </tr> 
</thead> 
<tbody> 
    <tr> 
    <td> 
     <%= form_for person do |f| %> 
     <table> 
      <tr> 
      <td><%= id %></td> 
      <td><%= f.text_field :name%></td> 
      <td>...</td> 
      <td>...</td> 
      <td>...</td> 
      </tr> 
     </table> 
     <% end %> 
    </td> 
    </tr> 
</tbody> 
</table> 
+0

그 일 것입니다. 데이터는 실제로 중첩 테이블을 필요로하지 않으므로 여전히 레이아웃 해킹처럼 보인다. 그리고 TH가 각각의 TD와 동일한 너비인지 확인하려면 더 많은 CSS가 필요할 수 있습니다. –

+0

이것이 시나리오라면 중첩 된 tds에 대해 span/div로 되돌아 가거나 하나의 양식을 사용하고 제출 된 행을 알기 위해 데이터 서버 측을 구문 분석해야한다고 생각합니다. – weexpectedTHIS