在后台用JS切换表格背景图片的问题

liladlove 2010-11-03 11:32:01
这段代码是在用户控件里的后台的PageLoad中运行的,相当于是导航,
switch (td_id)
{
case "td1":

Response.Write("<script>javascript:document.getElementById('td1').backgroundImage='../images/bgimg_01.gif';</script>");
break;
case "td2":
Response.Write("<script>javascript:document.getElementById('td2').backgroundImage='../images/bgimg_02.gif';</script>");
break;
case "td3":
Response.Write("<script>javascript:document.getElementById('td3').backgroundImage='../images/bgimg_03.gif';</script>");
break;
}


感觉上代码没什么问题,但是运行没效果。。。
断点跟踪进去却把自己绕晕掉了。。。特来请高手解惑~

...全文
297 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
liladlove 2010-11-03
  • 打赏
  • 举报
回复
不理解。。。我的这段代码不是在前台执行的呀,是在后台的PageLoad里执行的,怎么会前台的table还没创建呢?
边城的刀声 2010-11-03
  • 打赏
  • 举报
回复
或者是用

ClientScriptManager.RegisterStartupScript()方法来把你的js放到</form>之前,这样你的table肯定已经是创建了的
边城的刀声 2010-11-03
  • 打赏
  • 举报
回复
解决办法是你可以赋给一个变量,然后在.aspx页面中的底部引用这个变量
边城的刀声 2010-11-03
  • 打赏
  • 举报
回复
这个有问题,Response.Write是在页面的头部输出信息的,而这个时候td3还没有创建呢,所以没效果
liladlove 2010-11-03
  • 打赏
  • 举报
回复
唉。。。。不弄了。郁闷死了。。。。我另外一个项目是直接在页面里写的JS,不是在用户控件里写的。。。那个可以换,这个就不能换了。。。估计还是页面加载的时候调用用户空间之间的逻辑顺序没弄明白吧。。。。把切换表格td的背景图片的JS发给大家看下:

function bgChange(value)
{
for(x=1;x<=8;x++)
{
if(x==value)
{
document.getElementById("td"+x).src="../images/menu_on_0"+x+".gif";
}
else
{
document.getElementById("td"+x).src="../images/menu_0"+x+".gif";
}
}
}

無葉 2010-11-03
  • 打赏
  • 举报
回复
页面:

function setbackgroundImage(path) {
document.getElementById('td3').backgroundImage = path;
}


代码


Response.Write("<script>setbackgroundImage('../images/bgimg_01.gif');</script>");


试试
fartpig 2010-11-03
  • 打赏
  • 举报
回复
楼上的,你不理解 asp.net的运行机理, 其中的pageload方法执行的时候 ,页面还没有渲染出来,只是将控件载入到相应的web容器里面,所以要在指定的 ClientScriptManager来指定自己定义的javascript代码,此外 还有相应的 注意就是 :ClientScriptManager必须是在没有前台有 javascript-ajax控件的前提下,要不就要使用另外一个类了

62,272

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧