ajaxpro返回值类型总结-DataTable

ajaxpro使用总结系列其他内容

ajaxpro ajaxmethod 重载调用问题

ajaxpro方法ajaxmethod调用示例

ajaxpro返回值类型总结-string,int

ajaxpro返回值类型总结-DataTable

ajaxpro返回值类型总结-DataSet

ajaxpro综合示例-ajaxpro无刷新更新gridview数据

ajaxpro示例代码下载.rar

 ajaxpro2.dll for .net 2.0

ajaxPro7.7.31.1 出现this.onTimeout is not a function 的Bug解决方案

ajaxPro7.7.31.1 返回DataTable,DateSet出错

ajaxpro无刷新,分页更新repeater/GridView数据源

 

ajaxpro返回值类型总结-DataTable
  ajaxpro支持返回DataTable类型,在返回数据时在客户端会自动包装成Json对象,对应你服务器的DataTable的结构。
  value对象为包装好后的Table对象,有Rows属性,为json对象的数组,既然是数组,那么就由length属性了。
  总的来说和服务器端操作DataTable对象差不多,只是不能使用索引来获取Rows中的列的值,需要属性。
  示例如下
ajaxproDataTable.aspx

+展开
-HTML
<%@ Page Language="C#"  AutoEventWireup="true" CodeFile="ajaxproDataTable.aspx.cs" Inherits="ajaxproDataTable" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    <title>ajaxpro返回值类型总结-DataTable</title>
</head>
<body>
<script type="text/javascript">
    function callback(r) {
        var Table = r.value, rows = Table.Rows; //注意区分大小写
        for (var i = 0; i < rows.length; i++) {
            alert('Id:' + rows[i].Id + ' rndNum:' + rows[i].rndNum//这里需要属性名称来获取值,不能用索引
            + '\n\n' + 'Id:' + rows[i]['Id'] + ' rndNum:' + rows[i]['rndNum']//或者这样,一定要注意列名称的大小写,json属性是区分大小写的
            + '\n\n' + 'Id:' + rows[i][0] + ' rndNum:' + rows[i][1]//===这样获取不到值,为undefined
            );
        }
    }
    function callServer() {
        ajaxproDataTable.LoadDataTable(callback);
    }
</script> 
    <form id="form1" runat="server"><input type="button" value="获取DataTable对象" onclick="callServer()" /></form>
</body>
</html>

ajaxproDataTable.aspx.cs
+展开
-C#
using System;
using System.Data;
public partial class ajaxproDataTable : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        AjaxPro.Utility.RegisterTypeForAjax(typeof(ajaxproDataTable));
    }

    private DataTable CreateDataTable()
    {//创建DataTable
        DataTable dt = new DataTable();
        dt.Columns.Add("Id");
        dt.Columns.Add("rndNum");
        Random r = new Random();
        for (int i = 0; i < 5; i++) dt.Rows.Add(i, r.Next(1, 1000));
        return dt;
    }
    [AjaxPro.AjaxMethod]
    public DataTable LoadDataTable()
    {
        return CreateDataTable();
    }
}

加支付宝好友偷能量挖...


原创文章,转载请注明出处:ajaxpro返回值类型总结-DataTable

评论(1)Web开发网
阅读(210)喜欢(0)Asp.Net/C#/WCF