使用 ajax toolkit 中的 tabcontrol 时出现的一个小问题

使用 ajax toolkit 中的 tabcontrol 时,我们可以很轻便的实现 winfrom 程序中的 tab 页显示效果,如:

但是发现在 tabpage 中,服务器控件时,生成的 html 静态页面中,控件的 ID 都被加上了 tabcontrol 名字的前缀,如我们在页面中添加一个

GridView <asp:GridView ID="gvBooks" runat="server"/> 生成的静态页面中的 gvBooks 的 ID 变成了 TabControl1_tp1_gvBooks,

如果这时候,我们还想通过 javascript 对 gvBooks 进行操作时,就要注意获取 gvBooks 时,ID已经改变了!要使用生成的静态页面中的 ID,

如:document.getElementById("TabControl1_tp1_gvBooks")。不然页面总是会报脚本错误。

 

这里只是我在做测试项目中,遇到的一个很奇怪的问题,排查了很长时间才发现的,记下来,希望对以后遇到这种情况的同学有帮助!

 

我发现这种 Ajax 控件中在很多地方使用时都会有这种情况发生,当然通过 js 操作服务器控件也是很少见的!

 

posted @ 2010-10-23 15:52 XueM Views(...) Comments(...) Edit 收藏