2013-10-04 2 views
-3

이 문제에 대한 해결책이 있습니까? 문자열을 htmlhelper로 입력하십시오. C#

이 원인, 멋지게 쓰기

public static string ResourceScriptString(this HtmlHelper html, string type, string key) 
{ 
    return HttpUtility.JavaScriptStringEncode(ResourceDBManager.CachedObject.getValue(type, key), true); 
} 

내가 원하는 마십시오

$("#spanfile").html(@Html.ResourceScriptString("error","please.choose.file")); 

를 작동하지 않는 것은 작업 만 VS에서 자바 스크립트 구문 분석 오류와

$("#spanfile").html("@Html.ResourceScriptString("error","please.choose.file")"); 

한다
public static string ResourceScriptString(this HtmlHelper html, string type, string key) 
{ 
    return HttpUtility.JavaScriptStringEncode(ResourceDBManager.CachedObject.getValue(type, key), false); 
} 

답변

1

이 작동하지 않습니다 : 자바 스크립트 오류가 발생할 것

$("#spanfile").html(some value); 

: 결과는 무엇인가 같은 것

$("#spanfile").html(@Html.ResourceScriptString("error","please.choose.file")); 

때문입니다. 문자열을 내보내는 서버 측 코드는 주위의 따옴표가 아니라 값처럼 값을 내 보냅니다. 따옴표를 제공해야합니다. 당신이 여기에 :

$("#spanfile").html("@Html.ResourceScriptString("error","please.choose.file")"); 

비록이 가능성이 혼란 Visual Studio. 다행히 그게 더 나은 경우 자바 스크립트, 대신 작은 따옴표 문자열을 지정할 수 있습니다 :

$("#spanfile").html('@Html.ResourceScriptString("error","please.choose.file")'); 

이 여전히 Visual Studio에서 IntelliSense를 혼동 할 수있다 (이것은 적어도 2012 년 더 나은,하지만 난 면도기와 자바 스크립트 혼란을 혼합 알고 2010 년의 도마뱀) 그러나 육체적으로 작동해야합니다.

관련 문제