为什么FilteredTextBoxExtender导致无法获取属性' UI'未定义或空引用错误?

时间:2014-07-21 09:51:58

标签: asp.net ajaxcontroltoolkit

我在网页上添加了以下内容:

 <cc1:FilteredTextBoxExtender runat="server" FilterType="Numbers"
      TargetControlID="txtCompanyID" ID="ftbe1">
 </cc1:FilteredTextBoxExtender>

页面上有一个ScriptManager,并且Ajax Control Toolit已注册。

首先,我得到了无法解决符号&#39; ID&#39;在VS2010。我做了Ctrl-Shft-Alt-8来摆脱这个错误。

当我尝试加载页面时,我得到的只是:

JavaScript运行时错误:无法获取属性&#39; UI&#39;未定义或空引用

这一行突出显示:

$create(Sys.Extended.UI.FilteredTextBoxBehavior {
    "FilterType":2,
    "id":"MainContent_ftbe1"
}, null, null, $get("MainContent_txtCompanyID"));

2 个答案:

答案 0 :(得分:0)

如果页面中不存在以下内容,请尝试将其添加到页面源 - 可能需要在控件之后或现有脚本管理器之后:

<ajaxToolkit:ToolkitScriptManager runat="server" ID="ajaxScriptManager" EnablePartialRendering="true" CombineScripts="false" />

如果它已经存在,则CombineScripts属性可能设置为true,您应该将其设置为false。还要确保你的@PAGE指令没有Trace =“true” - 如果是这样,也将它设置为false,然后你可以将Ajax脚本管理器上的CombineScripts属性保持为true。

答案 1 :(得分:0)

[在正确的ID下重新发布] 如果页面中尚不存在以下内容,请尝试将其添加到页面源 - 可能需要在控件之后或现有脚本管理器之后:

<ajaxToolkit:ToolkitScriptManager runat="server" ID="ajaxScriptManager" EnablePartialRendering="true" CombineScripts="false" />

如果它已经存在,则CombineScripts属性可能设置为true,您应该将其设置为false。还要确保你的@PAGE指令没有Trace =“true” - 如果是这样,也将它设置为false,然后你可以将Ajax脚本管理器上的CombineScripts属性保持为true。