AJAX.NET用户开发指南(3)
2006-03-09 20:34
591 查看
Sample.ServerSideAdd(100,99, ServerSideAdd_CallBack); function ServerSideAdd_CallBack(response){ if (response.error != null){ alert(response.error); return; } alert(response.value); } |
value | 服务器端函数执行的返回值(可能是一个字符串、自定义对象或者dataset) |
error | 如果发生错误,则返回错误信息. |
request | 原始的xmlHttpRequest请求 |
context | 一个上下文对象 |
如果你想了解更多的关于XmlHttpRequest的知识,可以查看下面的链接: http://www.quirksmode.org/blog/archives/2005/02/xmlhttp_linkdum.html |
返回一个复杂类型
Ajax可以支持除了我们上面ServerSideAdd函数返回的Int值以外很多类型。他可以直接支持integers, strings, double, booleans, DateTime, DataSets 和 DataTables,也支持简单的自定义类型和数组。其他的类型通过其ToString方式来返回字符串。
返回DataSet的工作就像真正的.net Dataset.给出一个返回DataSet的服务端函数,我们可以通过下面的方法在客户端显示:
<script language="JavaScript"> //Asynchronous call to the mythical "GetDataSet" server-side function function getDataSet(){ AjaxFunctions.GetDataSet(GetDataSet_callback); } function GetDataSet_callback(response){ var ds = response.value; if(ds != null && typeof(ds) == "object" && ds.Tables != null){ var s = new Array(); s[s.length] = "<table border=1>"; for(var i=0; i<ds.Tables[0].Rows.length; i++){ s[s.length] = "<tr>"; s[s.length] = "<td>" + ds.Tables[0].Rows[i].FirstName + "</td>"; s[s.length] = "<td>" + ds.Tables[0].Rows[i].Birthday + "</td>"; s[s.length] = "</tr>"; } s[s.length] = "</table>"; tableDisplay.innerHTML = s.join(""); } else{ alert("Error. [3001] " + response.request.responseText); } } </script> |
[Serializable()] public class User{ private int _userId; private string _firstName; private string _lastName; public int userId{ get { return _userId; } } public string FirstName{ get { return _firstName; } } public string LastName{ get { return _lastName; } } public User(int _userId, string _firstName, string _lastName){ this._userId = _userId; this._firstName = _firstName; this._lastName = _lastName; } public User(){} [AjaxMethod()] public static User GetUser(int userId){ //Replace this with a DB hit or something :) return new User(userId,"Michael", "Schwarz"); } } |
相关文章推荐
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南(1)
- AJAX.NET用户开发指南(2)
- AJAX.NET用户开发指南(4)
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南
- AJAX .NET用户开发指南
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南
- AJAX.NET用户开发指南(1)
- AJAX.NET用户开发指南
- AJAX .NET用户开发指南(转)
- AJAX .Net组件用户指南(译文&原文)
- Ajax.net用户指南(转)