想将菜单栏做成ascx的用户控件,要实现菜单栏的图片点了之后页面跳转,并改变此按钮的背景图片。请各路高手相助,谢谢!!! 如题。做成ASCX是很简单的,把TABLE整个拿出来就可以了。但问题是,如何做背景图片的变换呢?谢谢了。顶者有分 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 this.ImageButton1.ImageUrl = "1.jpg"; ???楼主大概不会只想要这个吧?请把问题在详细一些~ <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。 <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> <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> 动态的,总要找个地方保存。你要根据需求设计,保存在数据库、Session、ViewState等等任何地方都有可能,要看你能不能把需求说清楚。 我还没表达清楚吗?这样举例说吧,就像TAOBAO网的菜单,点某个菜单按钮后,页面跳转,并且此菜单按钮变色。例如,一进TAOBAO是“首页”的按钮橙色的,别的都是黄色的,然后点了“数码”,则页面跳转到数码页,并且数码的按钮变成了灰色,别的按钮都是黄色。 所以,其实我并不建议你把菜单做成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> ascx虽然是可以实现,但是缺点多多,每次随着页面跳转都需要重新加载,效率低,状态保持也相对麻烦 接上面提到的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> 是我做的这个差不多吧?http://www.linil.cn/ // Type 此页面的URL 或标志string Type = '首页'switch(Type){ case...} 效果是wangkun9999()的效果。005的理解也是准确的,非常感谢你。我会试试你的办法。谢谢耐心回贴。准备结贴了 asp.net前台调用后台方法 关于显示用户登录的信息栏, 求指教. 为什么加了按钮别的就显示不了啊. 用C#做的asp.net例子出错了 求助:关于弹出提示框的问题. [新手]请教一个建立web应用程序项目的问题? 请教:datalist是否只能在html中编写数据绑定?在设计代码中可以进行数据绑定吗? 关于datagrid 删除列点击弹出确认对话框的问题 ASP.NET如何将中文字符提交输入到SQL 登录问题:登录后不能正确链接页面?在线等待! DataBinder.Eval绑定字段的时候只绑定汉字 datagrid中用循环变量调用Compute方法出错,请高手帮助阿!!!急。。。
<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。
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>
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>
<!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>
<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>
http://www.linil.cn/
string Type = '首页'switch(Type)
{
case...
}