2012-12-03 2 views
0

다음 문자열이 C# 코드에 있습니다.문자열에 큰 따옴표가있는 문제

string home = "<img src='/images/Home.png' 
        onclick='javascript:document.location.href=/Home/Index' />"; 

내가 클라이언트 측에이 문자열을 보낼 때 다음 이미지 이벤트, 작업 콘솔에서 다음과 같은 오류를 제공하지 않는 클릭 따옴표에 문제가 있음을

Uncaught SyntaxError: Invalid flags supplied to RegExp constructor 'Index' 
page_home (1):1 onclick 

나는 느낌이 문자열에 있지만 나는 얻지 못했습니다. 내가 여기서 뭐하고 있는거야?

+0

묻힌 따옴표를 인용 해 보았습니까? (예 : \를 사용) – RonaldBarzell

+1

이 ASP는 무엇입니까? 이것이 실제로 ASP라면 HTML을 처음부터 리터럴 문자열로 보내면 안됩니다. – Servy

답변

3

문제는 JavaScript에서 따옴표로 위치를 캡슐화하지 않아 정규식으로 처리하고 있다는 것입니다.

이렇게하면 문제가 해결됩니다.

string home = "<img src=\"/images/Home.png\" onclick=\"javascript:document.location.href='/Home/Index'\" />"; 

또한이 작업을 수행 할 수 있습니다

string home = @"<img src=""/images/Home.png"" onclick=""javascript:document.location.href='/Home/Index'"" />"; 
+1

그냥 강조하기 위해 인용 부호로 묶이지 않은'document.location.href' 할당의 오른쪽에있는 문자열입니다. 그리고 처음에는 여전히'/'가 필요합니다. – Igor

+0

제 잘못, 다시 편집 해 드리겠습니다 ... – Jamie

관련 문제