按Enter键时,使用HTMLEditorExtender的TextBox不会插入新行

时间:2013-03-02 10:35:34

标签: c# asp.net ajax ajaxcontroltoolkit htmleditorextender

我在我的网站上使用AjaxToolKit的HTMLEditorExtender控件。标记如下:

<asp:TextBox ID="TextBox2" runat="server" 
        Font-Names="'lucida grande',tahoma,verdana,arial,sans-serif" Height="100%" OnTextChanged="TextBox2_TextChanged" 
        style="margin-bottom: 26px; font-size: small;" Width="90%"></asp:TextBox>

<asp:HtmlEditorExtender ID="TextBox2_HtmlEditorExtender" runat="server" 
        Enabled="True" TargetControlID="TextBox2">
    <Toolbar>
        <asp:Undo />
        <asp:Redo />
        <asp:Bold />
        <asp:Italic />
        <asp:Underline />
        <asp:StrikeThrough />
        <asp:Subscript />
        <asp:Superscript />
        <asp:InsertOrderedList />
        <asp:InsertUnorderedList />
        <asp:RemoveFormat />
        <asp:SelectAll />
        <asp:UnSelect />
        <asp:Delete />
        <asp:Cut />
        <asp:Copy />
        <asp:Paste />
        <asp:Indent />
        <asp:Outdent />
        <asp:FontNameSelector />
    </Toolbar>
</asp:HtmlEditorExtender>

运行应用程序,并在TextBox2有焦点时按 Enter ,不会插入新行; 相反,TextBox2失去了焦点

除非<{strong> HTMLEditorExtender附加到TextBox2,否则不会发生

更多详情

我在本地IIS中运行该应用程序。该网站已上线但该功能尚未在主网站上推出。我正在使用ASP.NET WebForms和最新的AjaxToolkit版本。此问题也出现在每个浏览器中,包括Chrome,IE,Opera,Firefox。

2 个答案:

答案 0 :(得分:3)

最后我自己解决了这个错误。我提供的代码包含在一个带有默认按钮的Panel中。所以我删除了DefaultButton属性,现在代码工作正常。感谢大家添加回复。

答案 1 :(得分:0)

我相信你需要设置行数。看看这个例子,我知道它对我有用:

<ajax:HtmlEditorExtender ID="tbCommentHtmlExtender" runat="server"  
TargetControlID="tbEditor" DisplaySourceTab="false" EnableSanitization="false">  
  <Toolbar>                                        
   <ajax:FontNameSelector />
   <ajax:FontSizeSelector />
   <ajax:Bold />
   <ajax:Italic />
   <ajax:Underline />
   <ajax:StrikeThrough />
   <ajax:JustifyLeft />
   <ajax:JustifyCenter />
   <ajax:JustifyRight />
   <ajax:JustifyFull />
   <ajax:InsertOrderedList />
   <ajax:InsertUnorderedList />
   <ajax:CreateLink />
   <ajax:UnLink />
   <ajax:RemoveFormat />
   <ajax:BackgroundColorSelector />
   <ajax:ForeColorSelector />
  </Toolbar>
</ajax:HtmlEditorExtender>  

<asp:TextBox ID="tbEditor"  runat="server" Width="570px" Height="570px"  Rows="10" TextMode="MultiLine" ></asp:TextBox>

另外,

是什么
  

OnTextChanged = “TextBox2_TextChanged”

在做什么?如果我的上述建议不起作用,请尝试删除它。如果可行,请发布相应的功能。