公司要求项目的导航栏不能固定,也就是说导航栏要用户自定义;我打算把项目基本模块名称和所在导航栏位置以及连接地址放在数据库,这样实现用户自定义;可问题是本人不知道取出相关数据后如何通过后台代码或者js实现动态生成导航;
 
   也就是怎么样后台或js由数据库的数据在前台写出:
  
<li><a...></a></li>
<li><a...></a></li>
<li><a...></a></li>
<li><a...></a></li>

解决方案 »

  1.   

    html:
    <div id="menu_div" runat="server"></div>aspx.csthis.menu_div.innerHtml="<ul class=\"menu_cs"><li><a href=\"http://...\">...</a></li></ul>";
      

  2.   

    就是说asp.net工具栏那里不是有个【导航】栏吗?这里的Menu/TreeView/SiteMapPath等通过SiteMapProvider可以实现所谓动态。默认的SiteMapProvider会读取web.sitemap这个XML文件。当然你也可以把后台的数据存储改为数据库。
      

  3.   

    思路:
    后台for循环,把你的导航数据存dataset之类中/数组中,
    调用response.write()方法,写回到你的页面。
    比如:
    for (....)
    {
    string s = " <table>...
    <li> <a...> </a> </li>
    ...<table>";
    }response.write(s);
      

  4.   

    for循环,把你的导航数据存dataset之类中/数组中, 
    调用response.write()方法,写回到你的页面。 
    比如: 
    for (....) 

    string s = " <table>... 
    <li> <a...> </a> </li> 
    ... <table>"; 
    } response.write(s); 
      

  5.   

    先在前台设计好导航HTML;再在后台通过读取数据库构造出这样的HTML字符串,输出到DIV的上或一个Literal控件上.
    比如:Literal1.Text=HTML字符串;
    DIV1.innerHTML=HTML字符串;
      

  6.   

    对先写好对导航的字符串
    然后直接赋值就ok了
    <div id="div1"></div>
    div1.innerHTML="对先写好对导航的字符串";
      

  7.   

    前台<div id="div1"><%=caidan %></div> public string caidan;
    从数据库中读出数据
    for (....) 

    caidan = " <table>... 
    <li> <a...> </a> </li> 
    ... <table>"; 

      

  8.   

    就是说asp.net工具栏那里不是有个【导航】栏吗?这里的Menu/TreeView/SiteMapPath等通过SiteMapProvider可以实现所谓动态。默认的SiteMapProvider会读取web.sitemap这个XML文件。当然你也可以把后台的数据存储改为数据库。顶