2011-10-08 2 views
2

MVC를 사용 중이고 ImageLink의 HtmlHelper 확장 기능을 만들었습니다. 이 함수는 두 개의 TagBuilder 객체를 사용하여 HTML 이미지 링크 (예 :)를 만듭니다.TagBuilder에서 속성 값의 HTML 인코딩 사용 안 함

잘 작동하지만 이미지 버튼에 대한 작업을 먼저 확인해야하는 페이지가 있습니다. 그래서, "javascript : return confirm ('confirm me');과 onclick 속성을 추가했습니다." onclick 코드로.

다음과 같이 렌더링됩니다 : onclick = "javascript : return confirm (' 확인 날 ');"

비록 작동하지 않지만 그래도 작동합니다. 하지만 지금 우리가 입력 할 때 :

"javascript : return confirm ('confirm me \ r \ nnewline');"

로이 렌더링 :

는 onclick을 = "자바 스크립트 : 반환 확인 (' 나에게 줄 바꿈 ' 확인);"

작동하지 않습니다.

나는 TagBuilder가 전혀 인코딩하지 않고 그냥 처리하도록하겠습니다. 하지만 그 이후로, 나는 지금 이것이 제대로 작동 할 수있는 방법을 찾고 있습니다.

답변

2

백 슬래시 (\)는 C# 문자열의 특수 문자이므로 최종 문자열에 나타낼 때 다른 상황에서 일반적으로하는 것처럼 이스케이프해야합니다.

tag.MergeAttribute("onclick", "return confirm('first line\\n\\nsecond line');"); 
+0

인용구 : 심슨 : DOH! 감사! – Jasper