2012-04-05 2 views
0

문자열을 빌드하는 자바 스크립트 함수를 사용하여 작업 할 문자열을 C# 코드 숨김에 보냅니다. 문제는 PageMethods.Method가 결코 호출되지 않는다는 것입니다.PageMethods.Method가 자바 스크립트에서 호출되지 않습니다.

관련 코드 :

aspx 페이지 :

<asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" EnablePartialRendering="true" 
    runat="server" /> 
<script type="text/javascript"> 
function makeString() { 
     debugger 
     var a = document.getElementById("ddlRptYear").value + "_"; 
     var b = document.getElementById("ddlRptType").value + "_"; 
     var c = document.getElementById("ddlGeography").value + "_"; 
     var d = ""; 
     var e = ""; 
     var x = document.getElementById("ddlTouchPoint"); 
     var y = document.getElementById("ddlAOR"); 

     if (x.disabled == false) { 
      d = x.value + "_"; 
     } 

     if (y.disabled == false) { 
      e = y.value; 
     } 

     var pptString = a + b + c + d + e + ".ppt"; 
     PageMethods.GetPPTString(pptString, onSuccess, onFail); 
    } 

코드 숨김 :

나는의 SelectedIndexChanged 방법이 명중 할에 대한 RadioButtonList에 AutoPostBack을 가능하게했다
[System.Web.Services.WebMethod] 
    public static void GetPPTString(string pptString) 
    { 
     if ((pptString == "") || (pptString == null)) 
     { 
      throw new Exception("Error: No String Sent."); 
     } 
     else 
     { 
      throw new Exception(pptString); 
     } 
    } 
+0

절대 호출되지 않는다는 것을 어떻게 알 수 있습니까? 적절한 핸들러에 도착하기 전에 예외가 발생할 수 있습니까? 요청을 보내고 있는지 확인하기 위해 트래픽을 조사한 적이 있습니까? 그렇다면 응답은 무엇입니까? 자바 스크립트가 그 시점에 도달하기 전에 오류가 발생합니까? –

+0

코드를 밟았 기 때문에 절대로 호출되지 않는다는 것을 알고 있습니다. 자바 스크립트에서 디버거 태그와 C#에서 휴식. 방법을 사용하지 않고 바로 통화를 시작합니다. –

+0

자바 스크립트 호출은 비동기이므로 자연스럽게 실행을 즉시 반환하지만 실제 질문은 * 무엇입니까? 당신은 그 교통량을 조사하고, 실제적으로 * 보내지고 * 돌아 오는 것이 무엇인지 보았다. 그렇게하지 않으면 어둠 속에서 찌르는 일을 당하고 시간을 낭비하게 될 것입니다. –

답변

0

. 지금은 작동하지만 앞으로 게시해야하는 항목을 나중에 찾아야합니다.

관련 문제