资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

ASP.NET如何实现GridView增加一行JS

这篇文章主要介绍ASP.NET如何实现GridView增加一行JS,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

成都创新互联公司成立于2013年,我们提供高端重庆网站建设公司重庆网站制作网站设计、网站定制、全网整合营销推广微信小程序、微信公众号开发、成都网站推广服务,提供专业营销思路、内容策划、视觉设计、程序开发来完成项目落地,为混凝土搅拌机企业提供源源不断的流量和订单咨询。

效果如下
ASP.NET如何实现GridView增加一行JS

前台代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ChildFrm.aspx.cs" Inherits="ASPNETGridViewJSAdd.Pages.ChildFrm" %>







    


     
      
      
      
     


       
       
         <%#Container.DataItemIndex +1%>
         
       
       
           序号
       
       


       
       
         <%#Eval("p_name")%>
       
       
           姓名
       
       


        
       
         <%#Eval("p_age")%>
       
       
           年龄
       
       
      
       
       
         <%#Eval("p_sex")%>
       
       
           性别
       
       


     
     
            
            
            
            
            
            
    
    

增加一个gridview控件,后台存放数据使用DataTable。表头和内容使用来展示。这样可以在列中方多个控件,以满足项目的需要。

下面是JS代码:






    var dgPersonsID = "<%= dgPersons.ClientID %>";
    $(document).ready(function () {
        $("#dgPersons tr").eq(1).hide();
    });
    function AddNewRow() {
        var tr = $("#dgPersons tr").eq(1).clone();
        tr.show();
        tr.appendTo("#dgPersons");
        refreshNo();
        return false;
    }


    function refreshNo() {
      
        var dgg = document.getElementById(dgPersonsID);
        var index = 1;
        for (var i = 2; i < dgg.rows.length; ++i) {
            var cells = dgg.rows[i].cells;
            var row = dgg.rows[i];
            if (row.style.display != "none") {
                cells[0].firstChild.nodeValue = index++;
            }
        }


        return false;
    }


主要用来响应增加按钮增加一行,并且刷新数据,这里主要是来刷新序号。

后台代码


用于读取数据的方法,专门写了一个单例模式的类,本人觉得这样利于管理,所有代码都写在页面的CS文件中,不太方便。

public class MainManager
    {
        private DataTable personCollect = null;


        private static MainManager instance = null;


        public DataTable PersonCollect
        {
            get  { return personCollect; }


            set { personCollect = value; }
        }


        public static MainManager DoGetInstance()
        {
            if (instance == null)
            {
                instance = new MainManager();
            }


            return instance;
        }


        public void DoAddSinglePersons()
        {
            if(PersonCollect==null)
            {
                PersonCollect = new DataTable();


                PersonCollect.Columns.Add("p_id");


                PersonCollect.Columns.Add("p_name");


                PersonCollect.Columns.Add("p_age");


                PersonCollect.Columns.Add("p_sex");
            }


            if (PersonCollect.Rows.Count < 1)
            {
                for (int i = 0; i < 1; i++)
                {
                    DataRow nrow = PersonCollect.NewRow();


                    nrow["p_id"] = System.Guid.NewGuid().ToString();


                    nrow["p_name"] = "西北白杨树";


                    nrow["p_age"] = 27;


                    nrow["p_sex"] = "男";


                    PersonCollect.Rows.Add(nrow);
                }
            }
        }
    }


页面的cs类,负责加载数据和绑定。

  public partial class ChildFrm : System.Web.UI.Page
    {
        private MainManager dManager = null;


        protected void Page_Load(object sender, EventArgs e)
        {
            dManager = MainManager.DoGetInstance();


            if (!IsPostBack)
            {
                if (dManager.PersonCollect != null) { dManager.PersonCollect.Clear(); }
                
                dManager.DoAddSinglePersons();


                this.dgPersons.DataSource = dManager.PersonCollect;


                this.dgPersons.DataBind();
            }
        }
    }

以上是“ASP.NET如何实现GridView增加一行JS”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


名称栏目:ASP.NET如何实现GridView增加一行JS
分享链接:http://cdkjz.cn/article/pjdchg.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220