2013-03-02 11 views
6

Używam kontrolki AjaxToolKit w wersji HTMLEditorExtender w mojej witrynie. Znacznik jest w następujący sposób:TextBox przy użyciu HTMLEditorExtender nie wstawia nowej linii po naciśnięciu klawisza Enter

<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> 

uruchomieniu aplikacji i naciśnięciu Enterpodczas TextBox2 ma ostrość, nie jest włożona nowa linia; Zamiast tego traci ostrość.

To nie stanie się , chyba że jest dołączone do TextBox2.

Szczegóły

Używam aplikacji w lokalnym IIS. Strona jest dostępna, ale funkcja nie jest jeszcze dostępna na głównej stronie internetowej. Korzystam z WebForms ASP.NET i najnowszej wersji AjaxToolkit. Ten problem występuje również w każdej przeglądarce, w tym w przeglądarce Chrome, IE, Opera, Firefox.

+0

Czy dodanie 'TextMode =" Multiline "' do 'asp: TextBox ID =" TextBox2 "' help? – shahkalpesh

+0

nie było wcześniej wieloliniowe. Usunąłem tę właściwość, aby sprawdzić, czy działa bez zastosowania właściwości wielowierszowej, ale bez różnicy. –

+0

Nie wiem, dlaczego to nie działa. Zwiększ wysokość/szerokość pola tekstowego za pomocą zestawu multilinii. Wyczyść pamięć podręczną, zbuduj rozwiązanie i zobacz. – shahkalpesh

Odpowiedz

3

W końcu sam rozwiązałem ten błąd. Podany kod został umieszczony w panelu z domyślnym przyciskiem. Usunąłem właściwość DefaultButton i teraz kod działa poprawnie. Dziękuję wszystkim za dodanie odpowiedzi.

0

Uważam, że należy ustawić liczbę wierszy. Spójrz na ten przykład, ponieważ wiem, że to działa na mnie:

<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> 

Ponadto, co jest

OnTextChanged = "TextBox2_TextChanged"

robi? Jeśli powyższa sugestia nie działa, spróbuj ją usunąć. Jeśli to działa, opublikuj odpowiednią funkcję.

+0

Ya usunąłem "OnTextChanged =" TextBox2_TextChanged "' i dodałem 20 wierszy do pola tekstowego, nadal bez efektu. –

+0

Działa również bez żadnego błędu na pustej stronie aspx, którą stworzyłem, aby przetestować to. –

+0

w takim przypadku wygląda na to, że dzieje się coś innego. może zobaczmy więcej kodu – jason

Powiązane problemy