자바 스크립트를 사용하여 tbody없이 테이블 만들기 createElement/appendChild는 방화범에 tbody를 추가하지 않지만 innerHTML을 사용하면됩니다. 왜? 수동으로 tbody를 추가해야합니까?createElement/appendChild가있는 자동화 된 tbody가 없습니까?
답변
DOM 작성 방법을 사용할 때 구조 작성 방법을 원한다고 가정해야합니다.
다른 브라우저에서 동일한 구조를 유지하려는 경우 JavaScript가 HTML을 구문 분석하는 경우에도 항상 수동으로 추가해야합니다. 브라우저가 그 점에서 동일하게 동작하지 않을 수 있으므로 브라우저를 사용하여 삽입하지 마십시오.
Here's an example Firefox에서 실행할 수 있습니다.
은 마크 업으로 시작합니다.
<p>
<div>original</div>
</p>
<div>
는 ... 그것은 다음과 같이 렌더링 떠나 HTML 구문 분석됩니다 <p>
에서
<p></p>
<div>original</div>
<p></p>
쫓겨 도착하지만 우리는 DOM 방법과 동일한 구조를 만드는 경우, 파이어 폭스는 '아무튼 어떤 수정도하지 마라.
var p = document.createElement('p');
p.appendChild(document.createElement('div'))
.appendChild(document.createTextNode('new'));
document.body.appendChild(p);
그래서 결과 DOM은
<p></p>
<div>original</div>
<p></p>
<p>
<div>new</div>
</p>
그래서 당신은 당신이 보는 것조차 완전히 잘못된 구조의 경우는 수정을하지 않는 것을 알 수 있습니다 ... 지금이다 HTML을 파싱 할 때.
궁극적으로 브라우저간에 동일한 보장이 없으므로 궁극적으로 일반적인 브라우저 조정 또는 수정에 의존하지 않아야합니다.
잘 구성된 HTML을 사용하면 문제를 피할 수 있습니다.
팁과 예제를 제공해 주셔서 감사합니다! 그것은 나에게 이상한 일이었습니다. DOM 생성 메소드가 여러분이 만든 방식대로 구조를 표시한다면, 수동으로 생성 된 HTML 테이블은 여러분이 수정하는 방법이나 다른 방법을 사용하지 않고 수정하는 모든 방법을 존중해야합니다. – baptx
@baptx : HTML을 사용하면 실제로 DOM 구조를 수동으로 생성하지 않습니다. * 마크 업 *을 통해 XML을 생성합니다.이 태그는 구문 분석되어 DOM 구조로 해석되어야합니다. 브라우저 교정으로 이어진 해석이라고 확신합니다. DOM 메서드를 사용하여 DOM 구조를 만들 때 해석이 이루어지지 않습니다. 그것은 개발자가 명시 적으로이 노드를 그 노드에 넣는 것을 말하는 것이므로 메서드가 여러분이 말하는 것을합니다. –
... * DOCTYPE *은 * 마크 업 *의 해석에만 역할을하지만 메소드는 * DOCTYPE *을 시행하지 않는다고 생각합니다. –
tbody 요소의 시작 및 끝 태그은 선택 사항이므로, DOM 노드를 직접 조작하여 태그 삽입을 건너 뜁니다.
수동으로 tbody를 추가해야합니까?
다소 주관적입니다.
덕분에 선택 사항이지만이 노드를 사용하는 방식에 따라 표준이 준수되지 않습니다. – baptx
- 1. tbody가 비어있을 때 thead를 숨기는 방법?
- 2. Internet Explorer의 자동화 자동화 된 이미지
- 3. Glassfish에 자동화 된 배포
- 4. 자동화 된 약속 알림
- 5. 자동화 된 하이퍼 링크
- 6. windows 자동화 된 작업
- 7. 자동화 된 거미 테스트
- 8. 가젯의 자동화 된 테스트
- 9. 자동화 된 테스트
- 10. 자동화 된 테스트는 제어
- 11. 자동화 된 아코디언
- 12. 자동화 된 테스트로 테스트하기
- 13. Excel에서 자동화 된 Barchart
- 14. 자동화 된 드라이브 포맷?
- 15. 자동화 된 GIT 클론
- 16. 자동화 된 약어 생성
- 17. Teamcity를 사용한 자동화 된 게시
- 18. OWL/RDF 자동화 된 플래너
- 19. Android 개발에서 자동화 된 테스트
- 20. 웹킷 자동화 된 웹 테스트
- 21. Windev에 대한 자동화 된 테스트
- 22. Symbian 자동화 된 테스트 도구
- 23. 자동화 된 검사기 객체, 유용성?
- 24. CakePHP의 자동화 된 사이트 맵
- 25. Python-Wikipedia 자동화 된 다운로더
- 26. 자동화 된 웹 요청 감지
- 27. 자동화 된 비동기 소켓 테스트
- 28. 오래 된 UI 자동화 트리
- 29. Android : 자동화 된 GUI 테스팅
- 30. Kentico를 사용한 자동화 된 배포
나는 당신이 수동으로 tbody를 추가하도록 권유합니다. 'table.tBodies'를 사용할 수 있습니다. – Raynos