2012-08-17 5 views
3

JavaScript가 커지면서 ASPX 파일을 정리하고 싶습니다.외부 자바 스크립트 파일 인라인 C#을 호출합니다.

문제는 내 자바 스크립트에 많은 인라인 C# 호출이 관련되어 있습니다. 예 :

'<%=C# method call)%>' 

그러나 이것은 .js 파일에 숨어있을 때 작동하지 않습니다.

js 파일로 자바 스크립트를 분리 할 수있는 해결 방법이 있습니까?

답변

2

확실히 .js 파일에서 C#을 호출 할 수 없습니다. C# 코드는 클라이언트가 아닌 서버에서 실행됩니다. .js 파일은 서버에서 구문 분석되지 않습니다.

서버 쪽 C# 코드에 의해 동적으로 생성되는 JavaScript와 달리 실제 JavaScript를 .js 파일에 넣지 못하도록하지 않아야합니다.

JavaScript를 생성하는 C# 코드가 많은 경우 부분 뷰 (MVC 용어)를 사용하여 코드를 구성 할 수 있지만 표준 ASP.Net과 비슷한 것이 있습니다.

0

WebMethods을 사용하고 Ajax를 통해 호출 할 수 있습니다.

[WebMethod] 
public static int SomeMethod() 
{ 
    ... 
} 

그런 다음 Ajax로 호출하십시오. (이 예제에서는 jQuery을 사용하고 있습니다.)

$.ajax({ 
    type:  "POST" 
    url:   "/yourwebpage.aspx/SomeMethod" 
    data:  "{}" 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success:  function(data) { 
        // do something with the return value 
       } 
}); 
관련 문제