要点:
1> 通过一个隐藏的页面根据传递的参数从数据源获取数据,并且写到网络流中。
2> 在主页面通过javascript+xmlhttp根据一级菜单提供的参数(省的代码)向隐藏页面发送请求,并且解析返回的响应,并且动态添加到二级菜单中。
3> 由于DropDownList是在DataGrid模板中,因此DropDownList的ID是不确定的,因此需要用js根据父菜单的ID来动态生成子菜单的ID并且用document.getElementByID查找。

隐藏页面代码(default2.aspx.cs):
 1DataGrid中的级联菜单(转)using System;
 2DataGrid中的级联菜单(转)using System.Data;
 3DataGrid中的级联菜单(转)using System.Configuration;
 4DataGrid中的级联菜单(转)using System.Collections;
 5DataGrid中的级联菜单(转)using System.Web;
 6DataGrid中的级联菜单(转)using System.Web.Security;
 7DataGrid中的级联菜单(转)using System.Web.UI;
 8DataGrid中的级联菜单(转)using System.Web.UI.WebControls;
 9DataGrid中的级联菜单(转)using System.Web.UI.WebControls.WebParts;
10DataGrid中的级联菜单(转)using System.Web.UI.HtmlControls;
11DataGrid中的级联菜单(转)using System.Data.OleDb;
12DataGrid中的级联菜单(转)
13DataGrid中的级联菜单(转)
14DataGrid中的级联菜单(转)public partial class Default2 : System.Web.UI.Page
15


主页面服务器端代码:
 1DataGrid中的级联菜单(转)using System;
 2DataGrid中的级联菜单(转)using System.Data;
 3DataGrid中的级联菜单(转)using System.Configuration;
 4DataGrid中的级联菜单(转)using System.Web;
 5DataGrid中的级联菜单(转)using System.Web.Security;
 6DataGrid中的级联菜单(转)using System.Web.UI;
 7DataGrid中的级联菜单(转)using System.Web.UI.WebControls;
 8DataGrid中的级联菜单(转)using System.Web.UI.WebControls.WebParts;
 9DataGrid中的级联菜单(转)using System.Web.UI.HtmlControls;
10DataGrid中的级联菜单(转)using System.Data.OleDb;
11DataGrid中的级联菜单(转)
12DataGrid中的级联菜单(转)public partial class _Default : System.Web.UI.Page
13

主页面客户端代码:
 1DataGrid中的级联菜单(转)<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
 2DataGrid中的级联菜单(转)
 3DataGrid中的级联菜单(转)<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 4DataGrid中的级联菜单(转)
 5DataGrid中的级联菜单(转)<html xmlns="http://www.w3.org/1999/xhtml" >
 6DataGrid中的级联菜单(转)<head runat="server">
 7DataGrid中的级联菜单(转)    <title>Untitled Page</title>
 8DataGrid中的级联菜单(转)    <script language=javascript>
 9

效果图:

DataGrid中的级联菜单(转)

相关文章: