2009-10-01 2 views
0

웹 메소드에 대한 this 문서의 코드를보고 있는데 구현하려고했습니다. 이 기사는 설계된대로 작동하지만 ASP 단추에 대한 HTML 단추를 바꿀 때 다른 결과가 나타납니다. 뒤에웹 메소드는 html 버튼과 함께 작동하지만 asp : button은 작동하지 않습니다.

CODE :

[WebMethod] 
    public static string GetCurrentDate() 
    {   
     return DateTime.Now.ToString(); 
    } 

aspx 페이지 :

JS : 나는 버튼을 2 가지를 발견했습니다

<form id="form1" runat="server"> 
    <asp:ScriptManager EnablePageMethods="true" 
     ID="ScriptManager2" runat="server"> 
    </asp:ScriptManager> 

<div id="usingWebMethods"> 
     <asp:Label runat="server" 
      Text="Using WebMethods" 
      ID="Label5" /> 
     <br /> 

     <asp:Label 
      runat="server" 
      Text="Web Method Update!" 
      ID="Label6" /> 
     <asp:Button ID="Button3" 
      runat="server" 
      Text="Postback Update" 
      OnClientClick="UpdateTime();" 
      UseSubmitBehavior="False" />  
     <input type="button" 
      id="Button4" 
      value="Web Method Update" 
      onclick="UpdateTime();" /> 


</div> 
</form> 

<script type="text/javascript"> 
    function UpdateTime() { 
     $get('Label6').innerHTML = PageMethods.GetCurrentDate(OnSucceeded, 
            OnFailed); 
} 

function OnSucceeded(result, userContext, methodName) { 
    $get('Label6').innerHTML = result; 
} 

function OnFailed(error, userContext, methodName) { 
    $get('Label6').innerHTML = "An error occured."; 
} 
</script> 

및 기타 마크 업. 단추를 누르면 오류가 발생하고 레이블이 변경 되어도 viewstate가 업데이트되지 않습니다.

왜이 두 가지 문제가 발생하며 어떻게 해결할 수 있습니까?

+0

페이지의 HTML 소스를 확인하십시오. asp : 버튼이 제대로 렌더링되는지 확인하십시오. –

답변

1

ViewState는 포스트 백에서만 업데이트됩니다. 당신은 진정한 AJAX를 사용하고 있습니다. 당신이 한 일을 알 방법이 없습니다.

관련 문제