2013-03-16 9 views
7

Nie mogę napisać miłego tytułu do tego tematu, ponieważ mój problem jest trochę dziwny. Używam AjaxControlToolkit HTMLEditorExtender na mojej stronie internetowej do wysyłania wiadomości e-mail w formacie HTML. Każda inna cecha jak pogrubienie, kursywa, podkreślenie itp pracują dobrze, ale kiedy dodać link to pokazuje kod HTML w następujący sposób:AjaxControlToolKit HTMLEditorExtender dodawanie znacznika zakotwiczenia jako zwykłego tekstu po dodaniu łącza

enter image description here

Jak widać BOLD pracuje ale znacznik zakotwiczenia pojawia się w formacie kodu HTML.

Kod do przedłużacza i pola tekstowego:

<asp:TextBox ID="TextBox2" runat="server" Height="376px" 
       TextMode="MultiLine" Width="795px"></asp:TextBox> 
      <asp2:HtmlEditorExtender ID="TextBox2_HtmlEditorExtender" 
    runat="server" Enabled="True" TargetControlID="TextBox2"> 
</asp2:HtmlEditorExtender> 

Może ktoś Proszę mi powiedzieć, dlaczego tak się dzieje? Czy to jakiś błąd z przedłużaczem?

+0

Jak się przypisywanie HTML kod do 'TextBox' /' HtmlEditorExtender'? – Jesse

+0

Jest to automatycznie wykonywane przez HtmlEditorExtender. –

+1

Być może nie sformułowałem poprawnie mojego pytania - czy możesz wyjaśnić kroki podjęte w celu odtworzenia problemu, który masz? Czy HTML jest przygotowany i przypisany programowo? Czy użytkownik pisze tekst i używa przycisków paska narzędzi? – Jesse

Odpowiedz

1

Biorąc pod uwagę, że nie mam wystarczającej reputacji do komentowania postu, zadam pytanie uzupełniające tutaj. Czy istnieje sposób, aby zobaczyć tekst, który otrzymujesz na backend C#? Jest to możliwe źródło problemu, jeśli ciąg ma dziwne formatowanie.

Ponadto klienci poczty e-mail nie mają być przeglądarkami i istnieje prawdopodobieństwo, że klient poczty e-mail nie wyrenderuje html poprawnie.

1

Czy ten obraz jest zrzutem ekranu samego edytora? Stworzyłem własny projekt testowy przy użyciu tego samego kodu.

Również, w jaki sposób utworzyłeś link? Napisałem tekst, podświetliłem tekst i kliknąłem ikonę "utwórz link" i stamtąd wpisałem adres URL. Utworzono łącze zgodnie z oczekiwaniami.

Jedyna różnica polega na tym, że nie zawracałem sobie głowy wdrożeniem środka dezynfekującego, który, jak się wydaje, zrobiłeś. Chciałbym spróbować wyłączyć dezynfekcję (tylko w celach testowych) i sprawdzić, czy to jest twój problem.

+0

Nie jest to zrzut ekranu edytora. To zrzut ekranu wiadomości e-mail. Używałem środka dezynfekującego, jak sugerowałeś, usunąłem go, ale nadal nie ma różnicy. –

+0

@ShivaPareek Czy chodziło Ci o to, że e-mail po otwarciu z programu e-mailowego jest kotwicą jako znacznikiem HTML? Czy pokazuje poprawnie link podczas komponowania e-maila w HTMEditorExtender? –

+0

w porządku, więc pokazuje poprawnie w edytorze. Ponadto, w jaki sposób wysyłasz wiadomość e-mail? czy włączasz html podczas wysyłania e-maila? – Smeegs

0

Spróbuj to powinno rozwiązać Twój issue-

txtEmialMsg.Text=Server.HtmlDecode(ActualStringFromExtender.ToString()); 

Albo jeśli otrzymujesz (a href) tekst następnie trzeba użyć następujących podczas wysyłania e-maili

Server.UrlDecode(link) 
Powiązane problemy