2010-07-07 2 views
0

asp : Panel의 onLoad 이벤트에 Javascript 함수를 추가하려고합니다. 다음과 같이 바뀝니다.4.0에서 ASP.NET 컨트롤에 clientside onload 함수를 추가하면 따옴표가 인코딩됩니다.

string clickFunction = "$('[id*=lblHiddenPageArray]').text('');" 

PagesPanel.Attribues.Add("onLoad", clickFunction); 

이 기능을 다른 컨트롤 (확인란 및 버튼)에 연결하면 정상적으로 작동합니다. 하지만 PagesPanel (내 ASP : Panel 컨트롤)에서는 HTMLEncodes 함수를 사용합니다. 나는이 임무를 Server.HTMLDecode하려고했습니다

onLoad="$('[id*=lblHiddenPageArray]').text(''); 

,하지만 같은 일을 얻을 : 출력 소스는 다음과 같습니다. 전에이 .net 4.0에서 실행했습니다. 분명히 문자를 벗어나는 방법이 있을까요?

답변

0

나는 그것이 적절한 행동이라고 생각합니다. 속성 값은 실행되기 전에 브라우저에 의해 인코딩되지 않습니다. 간단한 예 :

<!DOCTYPE html> 
<html> 
    <head> 
     <title>foo</title> 
    </head> 
    <body onload="alert(&#39;foo&#39);"> 
     <p>foo</p> 
    </body> 
</html> 

다만 경우에 당신이 어떤 이유로 할 수없는 머리 ;-), 방화범이 끌려 파이어 폭스, 사파리와 크롬 웹킷 관리자 및 잠자리에서 오페라에서 해제 HTML 인코딩 것들 자동으로 당신을 위해 그것을 할 것입니다.

관련 문제