2011-03-18 5 views
1

jquery text() 함수를 사용하여 html을 받아들이고 해당 태그를 &에 맞게 변경하지 마세요. 그것을 ASCII 값으로 전달하는 것과 같은 것?html을 받아들이 기 위해 jquery text() 함수를 속일 수 있습니까?

내부적으로 텍스트 함수를 사용하는 jQuery 자동 완성의 레이블 부분에 HTML을 반환하려고합니다. 차라리하지 않을 문서화되지 않은 내부 함수 _renderItem()을 호출하는 사람들이 있습니다.

+0

어디'$의는 .text을 제어 할 수 없습니다()'호출되고? – mway

+5

내부적으로 문서화되지 않은 함수를 사용하는 것에 대한 이유가 확실하지 않지만 문서화되지 않은 방식으로 공용 함수를 사용하고 싶다면 ... – jondavidjohn

+0

텍스트 명령을 제어 할 수 없습니다. 그것은 자동 완성에 있습니다. 나는 그것을 보내는 데이터에 대한 통제권을 가지고있다. 나는 탈출구가 있는지 궁금해. 덕분에 – sdfor

답변

1

한 가지 방법은 일시적으로 기능, 예를 들어 대체하는 것입니다 :

var original = jQuery.text; 
jQuery.text = jQuery.html; 

// library code executes 

jQuery.text = original; 

을하지만 더 좋은 방법이 있다고 생각해야한다, 예를 들어, jQueryUi 자동 완성 결과를 표시하는 사용자 정의 HTML을 허용 :

http://jqueryui.com/demos/autocomplete/#custom-data

+0

! 나는 그것을 공부할 것이다. – sdfor

3

아니요. $ .text()를 사용하여이를 수행 할 수있는 방법이 있으면 보안 구멍이 될 수 있기 때문에 버그를 신고하십시오. 그것을 할 수

관련 문제