반응형
Razor 구문 및 자바 스크립트
테스트로 웹 양식에서 작성한 개념 증명 앱을 Razor로 변환하여 평가할 수 있도록합니다.
나는 지금까지 내 머리를 아프게하는 한 가지 문제에 부딪혔다 .. 클라이언트 측 자바 스크립트를 생성하는 중 ...
웹 양식
<script type="text/javascript">
var jqGridIdList = "<%: Url.Action ("getidlist", "office", new { area = "reports" }) %>";
var availableIds = [];
<% for (var i = 0; i < Model.Data.Count (); i++) { %>
availableIds.push({ value : "<%: Model.Data.ElementAt (i).Text %>", label : "<%: Model.Data.ElementAt (i).Text %>" });
<% } %>
</script>
Razor 구문
<script type="text/javascript">
var jqGridIdList = "@Url.Action("getidlist", "office", new { area = "reports" })";
var availableIds = [];
@for(var i = 0; i < Model.Data.Count (); i++) {
availableIds.push({ value : "@Model.Data.ElementAt(i).Text", label : "@Model.Data.ElementAt(i).Text" });
}
</script>
컴파일러는 'availableIds.push'줄에 다음 오류를 표시합니다.
컴파일러 오류 메시지 : CS1525 : 잘못된 식 용어 '{'
분명히 C #으로 컴파일하려고 시도하고 있지만 어떻게 중지합니까?
감사합니다,
Kieron
가상 요소로 감싸 야합니다 <text>
. 이렇게하면 파서가 다시 html 모드로 전환되고 javascript가 c #이 아닌 html의 일부로 구문 분석됩니다. 그것이 발생하는 이유 @for()
는 ac # 블록이고 그 안에서 처리되는 모든 것은 html 태그에 의해 이스케이프 될 때까지 c #으로 간주됩니다. html 태그를 원하지 않기 때문에 razor는 <text>
모드를 전환 하는 태그를 제공합니다 .
asp.net 웹 양식에서 차이점을 발견하면 C # 모드에서 벗어나는 <% for
행 을 끝 %>
냅니다. Visual Studio 2010 용 razor 하이 라이터 확장을 다운로드하면 코드가 코드로 처리되고 html이 html로 처리되는시기를 확인할 수 있습니다.
<script type="text/javascript">
var jqGridIdList = "@Url.Action("getidlist", "office", new { area = "reports" })";
var availableIds = [];
@for(var i = 0; i < Model.Data.Count (); i++) {
<text>availableIds.push({ value : "@Model.Data.ElementAt(i).Text", label : "@Model.Data.ElementAt(i).Text" });</text>
}
</script>
최신 버전 업데이트
이제 @:
더 가독성을 위해 구문을 사용할 수 있습니다.
<script type="text/javascript">
var jqGridIdList = "@Url.Action("getidlist", "office", new { area = "reports" })";
var availableIds = [];
@for(var i = 0; i < Model.Data.Count (); i++) {
@:availableIds.push({ value : "@Model.Data.ElementAt(i).Text", label : "@Model.Data.ElementAt(i).Text" });
}
</script>
ReferenceURL : https://stackoverflow.com/questions/4045308/razor-syntax-and-javascript
반응형
'Programing' 카테고리의 다른 글
동일한 프로젝트에서 Eclipse junit 테스트 (0) | 2021.01.07 |
---|---|
XMLHttpRequest는 jQuery로 URL을로드 할 수 없습니다. (0) | 2021.01.07 |
LINQ Any ()와 동등한 JavaScript / jQuery (0) | 2021.01.07 |
IEnumerable 내에서 항목 속성을 업데이트했지만 속성이 설정된 상태로 유지되지 않습니까? (0) | 2021.01.07 |
R에서 패키지를 자동으로로드하는 방법은 무엇입니까? (0) | 2021.01.07 |