关于datagrid的几点简单应用

发表于:2007-06-30来源:作者:点击数: 标签:
关于datagrid的几点简单应用,功能包括radio的单选,checkbox的多选,鼠标移动到行上颜色变深,链接传递多参数等功能。这里radio和checkbox都使用的是HTML控件。 有关checkbox的几个功能:全部选种、取消选种、没选中操作的检测等,这几个均使用js脚本实现。
关于datagrid的几点简单应用,功能包括radio的单选,checkbox的多选,鼠标移动到行上颜色变深,链接传递多参数等功能。这里radio和checkbox都使用的是HTML控件。
        有关checkbox的几个功能:全部选种、取消选种、没选中操作的检测等,这几个均使用js脚本实现。
    
        运行效果图: 
             

        testdatagrid.aspx页面代码: 
  1<%@ Page language="c#" Codebehind="testdatagrid.aspx.cs" AutoEventWireup="false" Inherits="localhost.fenpage.testdatagrid" %>
  2<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
  3<HTML>
  4    <HEAD>
  5        <title></title>
  6        <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
  7        <meta name="CODE_LANGUAGE" Content="C#">
  8        <meta name="vs_defaultClientScript" content="JavaScript">
  9        <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
 10        <script language="javascript">
 11        //全部选中
 12        function QuanXuan_Click()
 13        {
 14            if (document.Form1.checkboxname.length){
 15                for (var i=0;i<document.Form1.checkboxname.length;i++){
 16                    document.Form1.checkboxname[i].checked = true;
 17                }
 18            }else{
 19                document.Form1.checkboxname.checked = true;
 20            }
 21        }
 22        
 23        //取消选中
 24        function QuXiao_Click()
 25        {
 26            if (document.Form1.checkboxname.length){
 27                for (var i=0;i<document.Form1.checkboxname.length;i++){
 28                    document.Form1.checkboxname[i].checked = false;
 29                }
 30            }else{
 31                document.Form1.checkboxname.checked = false;
 32            }
 33        }
 34        
 35        ///////////////判断没有选中的返回false
 36        function slcNo_click()
 37        {
 38            if (document.Form1.checkboxname.length){
 39                for (var i=0;i<document.Form1.checkboxname.length;i++){
 40                    if(document.Form1.checkboxname[i].checked)
 41                    {
 42                        return true;
 43                    }
 44                }
 45            }else{
 46                if(document.Form1.checkboxname.checked)
 47                {
 48                    return true;
 49                }
 50            }
 51            alert("请选择后再操作!");
 52            return false;
 53        }
 54        
 55        //////////////////////////////////////改变行的颜色
 56        if (!objbeforeItem)
 57        {
 58            var objbeforeItem=null;
 59            var objbeforeItembackgroundColor=null;
 60        }
 61        function ItemOver(obj)
 62        {
 63            objbeforeItembackgroundColor=obj.style.backgroundColor;
 64            obj.style.backgroundColor="#B9D1F3";                                        
 65            objbeforeItem=obj;
 66        }
 67        
 68        function ItemOut(obj)
 69        {            
 70            if(objbeforeItem)
 71            {
 72                objbeforeItem.style.backgroundColor=objbeforeItembackgroundColor;
 73            }    
 74        }
 75        </script>
 76    </HEAD>
 77    <body MS_POSITIONING="GridLayout">
 78        <form id="Form1" method="post" runat="server">
 79            <table>
 80                <tr>
 81                    <td><FONT face="宋体"><asp:datagrid id="MyDataGrid" runat="server" Width="550px" AllowPaging="True" AutoGenerateColumns="False"
 82                                OnPageIndexChanged="MyDataGrid_Page" PageSize="10" CellPadding="2" HorizontalAlign="Left" BorderColor="Gray"
 83                                Font-Size="14px" Font-Names="新宋体">
 84                                <AlternatingItemStyle BackColor="#F2F2F2"></AlternatingItemStyle>
 85                                <ItemStyle Wrap="False" HorizontalAlign="Left" Height="22px" VerticalAlign="Middle"></ItemStyle>
 86                                <HeaderStyle Wrap="False" Height="25px" BackColor="#DEE6F6"></HeaderStyle>
 87                                <Columns>
 88                                    <asp:BoundColumn Visible="False" DataField="id" SortExpression="id" HeaderText="id"></asp:BoundColumn>
 89                                    <asp:TemplateColumn>
 90                                        <HeaderTemplate>
 91                                            选择
 92                                        </HeaderTemplate>
 93                                        <ItemTemplate>
 94                                            <input type=radio name="RadioName" value=@#<%# DataBinder.Eval(Container.DataItem, "id")%>@#/>
 95                                        </ItemTemplate>
 96                                    </asp:TemplateColumn>
 97                                    <asp:TemplateColumn>
 98                                        <HeaderTemplate>
 99                                            选择
100                                        </HeaderTemplate>
101                                        <ItemTemplate>
102                                            <INPUT type="checkbox" name="checkboxname" value=@#<%# DataBinder.Eval(Container.DataItem, "id")%>@#>
103                                        </ItemTemplate>
104                                    </asp:TemplateColumn>
105                                    <asp:TemplateColumn>
106                                        <HeaderTemplate>
107                                            模板列
108                                        </HeaderTemplate>
109                                        <ItemTemplate>
110                                            <asp:Label ID="lblId" Runat="server" Text=@#@#>
111                                            </asp:Label>
112                                            <a href="abc.aspx?id=<%#DataBinder.Eval(Container.DataItem,  "id") %>&name=<%#DataBinder.Eval(Container.DataItem,  "name") %>" target="_blank">连接</a>
113                                        </ItemTemplate>
114                                    </asp:TemplateColumn>
115                                    <asp:HyperLinkColumn DataNavigateUrlField="id" DataNavigateUrlFormatString="aa.aspx?id={0}" DataTextField="name"
116                                        SortExpression="name" HeaderText="姓名" Target="_blank">
117                                    </asp:HyperLinkColumn>
118                                    <asp:BoundColumn DataField="card" SortExpression="card" HeaderText="身份证号" DataFormatString="{0:yyyy-MM-dd hh:mm:ss}"></asp:BoundColumn>
119                                    <asp:BoundColumn DataField="price" SortExpression="price" HeaderText="价格"></asp:BoundColumn>
120                                    <asp:BoundColumn DataField="shijian" SortExpression="shijian" HeaderText="shijian" DataFormatString="{0:yyyy年MM月dd日}"></asp:BoundColumn>
121                                </Columns>
122                                <PagerStyle Mode="NumericPages"></PagerStyle>
123                            </asp:datagrid></FONT></td>
124                </tr>
125                <tr>
126                    <td>
127                        <asp:Button id="Button1" runat="server" Text="radio得到选择的行"></asp:Button>
128                        <INPUT type="button" value="全部选中" onclick="QuanXuan_Click()">
129                        <INPUT type="button" value="取消选中" onclick="QuXiao_Click()">
130                        <asp:Button id="Button2" runat="server" Text="checkbox得到选择的行"></asp:Button>
131                    </td>
132                </tr>
133            </table>
134        </form>
135    </body>
136</HTML>
137

原文转自:http://www.ltesting.net