<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Services"%>
<script runat="server">
protected void Page_Load(object sender, EventArgs e) 

} [WebMethod] 
public static DateTime GetCurrentTime() 
{         
    return DateTime.Now;     
} </script><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body> 
<form id="form1" runat="server"> 
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"> 
</asp:ScriptManager> 
<div> 
  <input id="Button1" type="button" value="button" onclick="showit()" /> 
</div> <script language="javascript" type="text/javascript"> 
function showit() 

  PageMethods.GetCurrentTime(suc); 

function suc(result) 

  alert(result);
  //为什么这里弹出的是整个页面的html? 

</script> 
</form> 
</body> 
</html>

解决方案 »

  1.   

    可我这弹出的的确是整个hmtl代码
      

  2.   


      <system.web>
        ...
        <httpModules>
          <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
        </httpModules>
        ...
      </system.web>由于我新建网站的时候没有选择ASP.NET AJAX-Enabled Web Site 所以出现了返回整个页面HTML的情况,在web.config文件中加入上面的代码,问题就解决了!