我有一个母版页,我在其中为getElementById
定义了一个函数。
function Clear() {
document.getElementById('<%= NameTextBox.ClientID %>').value = "";
document.getElementById('<%= LastNameTextBox.ClientID %>').value = "";
}
当我在其他页面中使用此功能时,它正在清除元素值。
但是当我在母版页中使用此代码时,我收到错误:
由于控件无法修改Controls集合 包含代码块(即&lt;%...%&gt;)。
[HttpException (0x80004005): The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).]
System.Web.UI.ControlCollection.Add(Control child) +9601391
AjaxControlToolkit.ScriptObjectBuilder.RegisterCssReferences(Control control) +691
AjaxControlToolkit.ScriptControlBase.OnLoad(EventArgs e) +44
System.Web.UI.Control.LoadRecursive() +54
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Control.LoadRecursive() +145
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772
如果我将我的代码更改为:
document.getElementById('<%# NameTextBox.ClientID %>').value = "";
我没有得到错误。但是不要清除我的元素。
答案 0 :(得分:0)
看起来您在母版页的<Head>
标记中添加了提到的js函数。
而是尝试在主页中的<form>
标记中添加js函数。