2013-03-02 8 views
6

Sto utilizzando il controllo di AjaxToolKit HTMLEditorExtender nel mio sito web. Il markup è la seguente:TextBox utilizzando HTMLEditorExtender non inserisce una nuova riga quando si preme Invio

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

l'esecuzione dell'applicazione, e premendo Invio mentre TextBox2 è attiva, non è inserita alcuna nuova linea; invece, TextBox2 perde il fuoco.

Questo non succede a meno che il HTMLEditorExtender sia collegato a TextBox2.

Maggiori dettagli

Sono in esecuzione l'applicazione in IIS locale. Il sito Web è in diretta ma la funzione non è ancora stata avviata sul sito Web principale. Sto usando ASP.NET WebForms e l'ultima versione di AjaxToolkit. Anche questo problema è presente in tutti i browser, inclusi Chrome, IE, Opera, Firefox.

+0

L'aggiunta di 'TextMode =" Multiline "' a 'asp: ID TextBox =" TextBox2 "' help? – shahkalpesh

+0

no era multilinea prima. Ho rimosso quella proprietà per verificare se funziona senza applicare la proprietà multiline ma nessuna differenza. –

+0

Non so perché non funzionerebbe. Aumentare l'altezza/larghezza della casella di testo con il set di più righe. Svuota la cache, crea la soluzione e guarda. – shahkalpesh

risposta

3

Infine ho risolto l'errore da solo. Il codice che ho fornito era racchiuso in un pannello che ha un pulsante predefinito. Così ho rimosso la proprietà DefaultButton e il codice funziona bene ora. Grazie a tutti per aver aggiunto le vostre risposte.

0

Credo che sia necessario impostare il numero di righe. Date un'occhiata a questo esempio, come so che funziona per me:

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

Inoltre, qual è

OnTextChanged = "TextBox2_TextChanged"

facendo? Se il mio suggerimento sopra non funziona, prova a rimuoverlo. Se funziona, pubblica la funzione corrispondente.

+0

Ho rimosso 'OnTextChanged =" TextBox2_TextChanged "' e aggiunto 20 righe alla casella di testo, ancora nessun effetto. –

+0

Funziona anche senza errori su una pagina vuota di aspx che ho creato per testarlo. –

+0

in questo caso, sembra che stia succedendo qualcos'altro. forse vediamo più codice – jason

Problemi correlati