我的母版页上有一个脚本管理器。我需要从一两个内容页面中删除 webresourse.axd,因为它会导致页面上的其他 javascript 出现问题
如何在这些页面上禁用脚本管理器?
ScriptManager 对象似乎没有任何看起来可以完成这项工作的属性
这可能吗?
最佳答案
将您的
<foo:MyScriptManager id="scriptManager" runat="server" Visible="false" />
您甚至可以向 MasterPage 添加一个属性,您可以在内容页面中使用它来显示/隐藏 ScriptManager:
// In your master page
public bool ShowScriptManager {get; set;}
// In your master page's Page_Load
private void Page_Load(object sender, EventArgs e) {
...
scriptManager.Visible = ShowScriptManager;
...
}
由于您的大多数页面都需要 ScriptManager,因此将其默认为 true 可能是一个想法 - 我认为您可以在主页的 Page_Init 方法构造函数中执行此操作:
public SiteMaster() {
...
ShowScriptManager = true;
...
}
// Or alternatively
private void Page_Init(object sender, EventArgs e) {
...
ShowScriptManager = true;
...
}
然后,如果您在内容页面中设置了 MasterType:
<%@ MasterType VirtualPath="~/path/to/master/page" %>
你只需要在内容页面的 Page_Load 中做这样的事情:
Master.ShowScriptManager = false;
关于asp.net - 在某些页面上禁用 ScriptManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1057905/