FreeTextBox javascript错误阻止我的DropDownList上的PostBack

时间:2012-08-17 18:09:08

标签: c# javascript asp.net postback freetextbox

我有一个页面上有3个FreeTextBox控件。它们设置正确,我正常使用它们,直到我需要添加一个PostBack到服务器的DropDownList控件,但我很惊讶地看到OnSelectedIndexChanged事件永远不会触发。如果我要使用按钮或其他服务器端控件进行发布,则会触发事件。经过大量调试后,我发现每次在DropDownList控件上选择不同的东西时都会抛出以下Javascript错误:

TypeError: FTB_API.MainContent_MainContent_FreeTextBox1 is undefined

错误似乎很简单; Firebug告诉我这个错误来自以下函数:

function WebForm_OnSubmit()
{
    FTB_API['MainContent_MainContent_FreeTextBox1'].StoreHtml();FTB_API['MainContent_MainContent_FreeTextBox2'].StoreHtml();FTB_API['MainContent_MainContent_FreeTextBox3'].StoreHtml();
    return true;
} 

我尝试过几件事但没有成功。当我从我的页面中删除FreeTextBox控件时,我有成功的PostBacks。任何帮助,将不胜感激。 感谢。

编辑1 :这是我的一些标记

3 FreeTextBox设置如下:

<FTB:FreeTextBox ID="FreeTextBox3" JavaScriptLocation="ExternalFile" ButtonImagesLocation="ExternalFile" ToolbarImagesLocation="ExternalFile" runat="server" EnableHtmlMode="true" />

我的DropDownList:

<asp:DropDownList ID="DropDownList1" runat="server" AppendDataBoundItems="true" AutoPostBack="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
</asp:DropDownList>

2 个答案:

答案 0 :(得分:1)

在标记页面中设置下拉列表的属性AutoPostBack = true。当您更改下拉元素并触发OnSelectedIndexChanged时,这将使帖子返回。

示例:

<asp:DropDownList id="drpList" runat="server" AutoPostBack="true" OnSelectedIndexChanged="event name" />

答案 1 :(得分:0)

我在这个帖子中找到了问题的答案:Hidden FreeTextBox bug on Firefox似乎由于某种原因,当控件不可见或被隐藏(我有标签)时,它的行为就是这样。答案是一种哈克,但它确实有效。谢谢你的回答。