如题。做成ASCX是很简单的,把TABLE整个拿出来就可以了。
但问题是,如何做背景图片的变换呢?
谢谢了。
顶者有分

解决方案 »

  1.   

    this.ImageButton1.ImageUrl = "1.jpg";  ???楼主大概不会只想要这个吧?请把问题在详细一些~
      

  2.   

    <td width="64"><table width="63" height="29" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td align="center" background="1.jpg">菜单一</td>
    </tr>
    </table>
    </td>
    <td width="64"><table width="63" height="29" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td align="center" background="2.jpg">菜单二</td>
    </tr>
    </table>
    </td>
    如上,如何点菜单一,页面跳转之余可以把他的背景改成1b.jpg,点菜单二的时候把2的背景改成2b.jpg,而一恢复成2.jpg。
      

  3.   

    <script language="javascript">
    var curMenu = null;
    function menuClick(objMenu)
    {
    var tmp = objMenu.background;
    tmp = tmp.replace(".jpg","2.jpg");
    objMenu.background = tmp;

    if(curMenu!=null)
    {
    tmp = curMenu.background;
    tmp = tmp.replace("2.jpg",".jpg");
    curMenu.background = tmp;
    }
    curMenu = objMenu;
    }
    </script>***************************************
    <td width="64"><table width="63" height="29" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td align="center" background="../Images/t.jpg" onclick="menuClick(this);">菜单一</td>
    </tr>
    </table>
    </td>
    <td width="64"><table width="63" height="29" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td align="center" background="../Images/t.jpg" onclick="menuClick(this);">菜单二</td>
    </tr>
    </table>
    </td>
      

  4.   

    <script language="javascript">
    var curMenu = null;
    function menuClick(objMenu)
    {
    var tmp = objMenu.background;
    tmp = tmp.replace(".jpg","b.jpg");
    objMenu.background = tmp;

    if(curMenu!=null)
    {
    tmp = curMenu.background;
    tmp = tmp.replace("b.jpg",".jpg");
    curMenu.background = tmp;
    }
    curMenu = objMenu;
    }
    </script>***************************************
    <td width="64"><table width="63" height="29" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td align="center" background="../Images/t.jpg" onclick="menuClick(this);">菜单一</td>
    </tr>
    </table>
    </td>
    <td width="64"><table width="63" height="29" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td align="center" background="../Images/t.jpg" onclick="menuClick(this);">菜单二</td>
    </tr>
    </table>
    </td>
      

  5.   

    动态的,总要找个地方保存。你要根据需求设计,保存在数据库、Session、ViewState等等任何地方都有可能,要看你能不能把需求说清楚。
      

  6.   

    我还没表达清楚吗?这样举例说吧,就像TAOBAO网的菜单,点某个菜单按钮后,页面跳转,并且此菜单按钮变色。例如,一进TAOBAO是“首页”的按钮橙色的,别的都是黄色的,然后点了“数码”,则页面跳转到数码页,并且数码的按钮变成了灰色,别的按钮都是黄色。
      

  7.   

    所以,其实我并不建议你把菜单做成ascx,而是用frameset,让菜单固定不变例如<%@ Page language="c#" Codebehind="MainForm.aspx.cs" AutoEventWireup="false" Inherits="bsTest2005_8_16.Samples.FrameSet.MainForm" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <html>
    <head>
    <title>MainForm</title>
    <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
    <meta name="CODE_LANGUAGE" Content="C#">
    <meta name="vs_defaultClientScript" content="JavaScript">
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    </head>
    <frameset border="0" frameSpacing="0" rows="90,78%,32" frameBorder="0">
    <frame id="topFrame" name="topFrame" src="topFrame.htm" scrolling="no" noresize >
    <frameset cols="145,10,*" id="mainindex">
    <frame id="menuFrame" name="menuFrame" src="LeftMenu.htm" frameBorder="no" noResize scrolling="no">
    <frame src="default.htm" frameBorder="no" noResize scrolling="no">
    <frame id="mainFrame" name="mainFrame" src="webform1.aspx">
    </frameset>
    <frame name="bottomFrame" src="bottomFrame.htm" noResize scrolling="no">
    <noframes>
    <p id="p1">
    此 HTML 框架集显示多个 Web 页。若要查看此框架集,请使用支持 HTML 4.0 及更高版本的 Web 浏览器。
    </p>
    </noframes>
    </frameset>
    </html>
      

  8.   

    ascx虽然是可以实现,但是缺点多多,每次随着页面跳转都需要重新加载,效率低,状态保持也相对麻烦
      

  9.   

    接上面提到的FrameSet:在LeftMenu.htm中这样就可以实现跳转
    <script language="javascript">
    var curMenu = null;
    function menuClick(objMenu)
    {
    var tmp = objMenu.background;
    tmp = tmp.replace(".jpg","2.jpg");
    objMenu.background = tmp;

    if(curMenu!=null)
    {
    tmp = curMenu.background;
    tmp = tmp.replace("2.jpg",".jpg");
    curMenu.background = tmp;
    }
    curMenu = objMenu;
    parent.mainFrame.location.href = "webform123.aspx";
    }
    </script><table>
    <tr>
    <td width="64"><table width="63" height="29" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td align="center" background="../Images/t.jpg" onclick="menuClick(this);">菜单一</td>
    </tr>
    </table>
    </td>
    <td width="64"><table width="63" height="29" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td align="center" background="../Images/t.jpg" onclick="menuClick(this);">菜单二</td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
      

  10.   

    是我做的这个差不多吧?
    http://www.linil.cn/
      

  11.   

    // Type 此页面的URL 或标志
    string Type = '首页'switch(Type)
    {
      case...
    }
      

  12.   

    效果是wangkun9999()的效果。005的理解也是准确的,非常感谢你。我会试试你的办法。谢谢耐心回贴。准备结贴了