这个是自己在学习asp.net过程中所遇到的问题,并且已经解决
问题的提示为:控件包含代码块(即 <% ... %>),因此无法修改控件集合。
例如:
<script type="text/javascript">
function show_window()
{
var value = '<%=Session["id"]>'; //此处出错
.......
}
</script>
编译时:系统提示:
控件包含代码块(即 <% ... %>),因此无法修改控件集合。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Web.HttpException: 控件包含代码块(即 <% ... %>),因此无法修改控件集合。
通过在网上搜索、寻找、研究,
大致的解决方法是:将上述的 <script type="text/javascript">..........</script>的js代码块单独的放在<div id="show" runat="server" style="display:none">......</div>
中,可以将div隐藏掉;
即:
<div id="show" runat="server" style="display:none">
<script type="text/javascript">
function show_window()
{
var value = '<%=Session["id"]>'; //此处出错
.......
}
</script>
</div>
个人认为:将出现<%=....%>或其他类似问题的js代码块放入一个html标签中,并且给该标签添加runat="server"属性;
但是,我有点疑问,为什么必须要放在带有runat="server"的html标签中呢?希望明白的童鞋,能解惑之.........
注:这个只是个人在学习过程中自己的理解,不足之处,望大家指出,或者有好的解决方法或总结的,希望能分享,共同学习。。。 。。。