目前我的页面上有一个div对服务器发出大量请求,因此页面加载大约需要10秒.我们并不总是需要这些数据,所以我希望能够在页面加载所有信息,除了这一个div.一旦页面加载100%我希望它加载此div(可能显示加载…).
我已经从我的TrackingData.aspx做了一个ajax请求作为测试,但我似乎无法让它工作.
function ShowCurrentTime() { $.ajax({ type: "POST",url: "TrackingData.aspx/GetCurrentTime",data: '{name: "' + $("#<%=txtUserName.ClientID%>")[0].value + '" }',contentType: "application/json; charset=utf-8",dataType: "json",success: OnSuccess,failure: function(response) { alert("bye"); } }); } function OnSuccess() { alert("hi"); }
和HTML
Your Name : <asp:TextBox ID="txtUserName" runat="server"></asp:TextBox> <input id="btnGetTime" type="button" value="Show Current Time" onclick = "ShowCurrentTime()" /> </div>
C#代码很简单
public static string GetCurrentTime(string name) { return "Hello " + name + Environment.NewLine + "The Current Time is: " + DateTime.Now.ToString(); }
在同一个文件夹中有一个TrackingData.aspx,它有一个方法GetCurrentTime.这只是一种测试方法,但是一旦我开始工作,我应该能够自己完成其余的工作.
解决方法
您需要在静态方法(GetCurrentTime)之前添加它:
[System.Web.Services.WebMethod]
为了避免一些错误,您可以使用json stringify为您的数据:
data: { name: JSON.stringify($("#<%=txtUserName.ClientID%>")[0].value)}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。