javascript - asp.net c# javascript The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>) 无法修改控件集合

标签 javascript c# asp.net

我正在使用 Asp.net c# 和 javascript
我想在 javascript 中使用 Session 值,所以我使用这段代码:

<script type="text/javascript">
    var Warehousename = '<%= Session["warehouse_id"] %>';
    var temp = new Array();
    temp = Warehousename.split(",");
    if (temp.length > 1) {
        alert('you have multiple access of warehouse. Kindly select the only one warehouse from Preference')
        window.location.href = "frm_preferences.aspx";
    }
</script>

但是我遇到了一些错误,比如

'The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).'

所以哪里做错了请指点我

最佳答案

以下是可能的解决方案:

首先:
从页面的 header 部分删除 JavaScript 并将其添加到页面的主体并运行您的应用程序,它将为您工作!

第二:

将代码块替换为<%#而不是 <%=

<%#替换代码块后而不是 <%=在页面加载中添加如下代码

protected void Page_Load(object sender, EventArgs e)
{
  Page.Header.DataBind();    
}  

关于javascript - asp.net c# javascript The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>) 无法修改控件集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39672986/

相关文章:

javascript - 父后代 jquery 选择器中的奇怪错误

javascript - 在 Javascript 的匿名函数中获取属性名称

C# Brick Breaker 游戏,让砖 block 被击中后消失

C# 从 App.xaml.cs 访问 WPF 主窗口中的静态属性时导致这种奇怪行为的原因

javascript - 在外部 javascript 文件中嵌入 ASP.Net 代码

asp.net - 有没有一种在 ASP.net 中创建标记对(<TagName> 值</TagName>)的简单方法

javascript - 将 GridView 列值传递给 Javascript 函数 - OnClientClick

javascript - Vue Router 将 Prop 传递给动态加载的 child

C#:字符串参数被神秘地重置为空 - 请帮忙!

javascript - 如何使用 Chrome 开发工具找出引用分离的 DOM 树的内容