当前位置:编程学习 > C#/ASP.NET >>

asp.net ajax 简单应用实例

asp教程.net文件

@ webhandler language="c#" class="handler"  %>

using system;
using system.web;
using system.collections.generic;
using system.data;

 

public class handler : ihttphandler
{
    public void getpage( httpcontext context)
    {
        int pagenum = convert.toint32(context.request["pagenum"]); pagenum++;
        if (pagenum <= 3)
        {
            dataset1.productdatatable cachedata = (dataset1.productdatatable)context.cache["cachekey"];
            if (cachedata == null)
            {
                cachedata = new dataset1tableadapters.producttableadapter().getdatabypriceasc(1, 15);
                context.cache.insert("cachekey", cachedata, null, system.web.caching.cache.noabsoluteexpiration, timespan.fromseconds(80));
            }
            list<product> news = new list<product>();
            for (int i = (pagenum * 5) - 4; i <= pagenum * 5; i++)
            {
                dataset1.productrow row = cachedata[i - 1];
                string s = link.toproduct(row.productid.tostring());
                news.add(new product()
                {
                    name = row.name,
                    description = row.description,
                    price = row.price.tostring(),
                    thumbnail = row.thumbnail,
                    path = s
                });


            }
            system.web.script.serialization.网页特效serializer jss = new system.web.script.serialization.javascriptserializer();
            context.response.write(jss.serialize(news));
        }

        else
        {

            var data = new dataset1tableadapters.producttableadapter().getdatabypriceasc((pagenum * 5) - 4, pagenum * 5);
           
            list<product> news = new list<product>();
            for (int i =0; i <5; i++)
            {
                dataset1.productrow row = data[i];
                string s = link.toproduct(row.productid.tostring());
                news.add(new product()
                {
                    name = row.name,
                    description = row.description,
                    price = row.price.tostring(),
                    thumbnail = row.thumbnail,
                    path = s
                });


            }
            system.web.script.serialization.javascriptserializer jss = new system.web.script.serialization.javascriptserializer();
            context.response.write(jss.serialize(news));
       
        }

     }
    public void processrequest (httpcontext context)
    {
        context.response.contenttype = "text/plain";
        string action = context.request["action"];
        if (action == "getpage")
        {
            int allcount = new dataset1tableadapters.producttableadapter().getcount().value;
            context.response.write(allcount);
          
        }
        else if (action == "getpagedateasc")
        {
           
            getpage("getpagedateasc", context);
        }
        else if (action == "getpagedatedesc")
        {
            getpage("getpagedatedesc", context);
        }
       
    }
 
 
    public bool isreusable
    {
        get
        {
            return false;
        }
    }
   
   

}
public class product
{
    public string name { set; get; }
    public string description { set; get; }
    public string price { set; get; }
    public string thumbnail { set; get; }
    public string path { set; get; }

}      


html代码

<!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>
    <title></title>
    <link href="app_themes/balloonshopdefault/balloonshop.css教程" rel="stylesheet" type="text/css" />
    <link href="pagination.css" rel="stylesheet" type="text/css" />
    <script src="新文件夹1/jscript.js" type="text/javascript">
    </script><script src="新文件夹1/jquery.pagination.js" type="text/javascript"></script>
    <script type="text/javascript">
        function createlink() {
            $("#pagination a").each(function (i) {
                if (!isnan(parseint(this.innerhtml))) {
                    this.href = "/balloonshop/balloons-for-children/message-balloons/page=" + parseint(this.innerhtml);
                }
            });
        }

        var data;
        $(function () {
            $.post("handler.ashx", { "action": "getpage" }, function (data123, status) {
               data=data123;
               initdata(0);
             
            });
          
        });

        function pageselectcallback(page_id, jq) {
            initdata(page_id);
            return false;
        };
       


        function initdata(pageindx) {

            $.post("handler.ashx", { "action": "getpagedate", "pagenum": pageindx }, function (data, status) {

                if (status == "success") {
                    var datas = $.parsejson(data);
                    $("#myul").empty();
                    for (var i = 0; i < datas.length; i++) {
                        var p = datas[i];
                        var li = $("<li>" + "<h3 class='producttitle'> <a href='" + p.path + "'>" + p.name + "</a></h3>" +
                                               "<a href='" + p.path + "'>" + "<img src=" + "productimages/" + p.thumbnail + " />" + "</a>"
                                             
                                             +p.description+"<p class='detailsection'>+ price:"+p.price+"</p></li>");
 
                                
                                         
   
                       $("#myul").append(li);
    
    
       
   
 

  
                   
                    }

                };


            });

            $("#pagination").pagination(data, {
                callback: pageselectcallback,
                prev_text: '<< 上一页',
                next_text: '下一页 >>',
                items_per_page: 5,
                num_display_entries: 4,
                current_page: pageindx,
                num_edge_entries: 1
            });
            createlink();
        }
   
    </script>
</head>
<body>
<a href="catalog.aspx"></a>
 <ul style="list-style-type:none" id="myul"></ul>
 <div id="pagination" class="digg" style="float:left"/>
</body>
</html>

<!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>
    <title></title>
    <link href="app_themes/balloonshopdefault/balloonshop.css" rel="stylesheet" type="text/css" />
    <link href="pagination.css" rel="stylesheet" type="text/css" />
    <script src="新文件夹1/jscript.js" type="text/javascript">
    </script><script src="新文件夹1/jquery.pagination.js" type="text/javascript"></script>
    <script type="text/javascript">
        function createlink() {
            $("#pagination a").each(function (i) {
                if (!isnan(parseint(this.innerhtml))) {
                    this.href = "/balloonshop/balloons-for-children/message-balloons/page=" + parseint(this.innerhtml);
                }
            });
        }

        var data;
        $(function () {
            $.post("handler.ashx", { "action": "getpage" }, function (data123, status) {
               data=data123;
               initdata(0);
             
            });
          
        });

        function pageselectcallback(page_id, jq) {
            initdata(page_id);
            return false;
        };
       


        function initdata(pageindx) {

            $.post("handler.ashx", { "action": "getpagedate", "pagenum": pageindx }, function (data, status) {

                if (status == "success") {
                    var datas = $.parsejson(data);
                    $("#myul").empty();
                    for (var i = 0; i < datas.length; i++) {
                        var p = datas[i];
                        var li = $("<li>" + "<h3 class='producttitle'> <a href='" + p.path + "'>" + p.name + "</a></h3>" +
                                               "<a href='" + p.path + "'>" + "<img src=" + "productimages/" + p.thumbnail + " />" + "</a>"
                                             
                                             +p.description+"<p class='detailsection'>+ price:"+p.price+"</p></li>");
 
                                
                                         
   
                       $("#myul").append(li);
    
    
       
   
 

  
                   
                    }

                };


            });

 

            $("#pagination").pagination(data, {
                callback: pageselectcallback,
                prev_text: '<< 上一页',
                next_text: '下一页 >>',
                items_per_page: 5,
                num_display_entries: 4,
                current_page: pageindx,
                num_edge_entries: 1
            });
            createlink();
        }
   
    </script>
</head>
<body>
<a href="catalog.aspx"></a>
 <ul style="list-style-type:none" id="myul"></ul>
 <div id="pagination" class="digg" style="float:left"/>
</body>
</html>

补充:asp.net教程,.Net开发
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,