2009-09-29 3 views
6

:

<span>Hi<br />SecondLine</span> 

을 그리고 난이 jQuery를 함수를 호출 :

var html = $('span').html(); 

HTML로 설정 : 이제

Hi<br>SecondLine 

을, 나는 이름을 실현 함수의 xhtml()이 아닌 html()입니다. 그러나 이것은 예상되는 행동입니까? 내가 의지, 또는 내가 항상 곁에 예, 말에서는, XHTML의 BR 태그와 HTML의 BR 태그를 확인해야하나요 :

function br2nl(text) { 
    return text.replace(/<br \/>/gi, '\n').replace(/<br>/gi, '\n'); 
} 
+2

문서가 HTML로 처리되며 XHTML로 처리되지 않습니다. – Gumbo

+0

파이어 폭스가 소문자를 반환하고 IE가 대문자를 반환하기 때문에 정규식에 대소 문자를 추가하지 않았습니다. – slolife

답변

9

은하지 않습니다. 브라우저 DOM 만 수정합니다.

innerHTML을 사용하는 경우 DOM을 HTML 또는 XHTML로 serialize하는 것은 브라우저의 몫입니다. 다른 브라우저는 다르게 작동합니다.

3

모든 브라우저는 DOM 트리를 작성하는 동안 HTML 코드를 표준화합니다. 따라서 자바 스크립트는 이미 표준화 된 DOM에 대한 액세스 권한을 얻습니다. 모든 태그가 올바르게 닫혀 있어야합니다.

관련 문제