2010-01-31 20 views
5

Sprawdzam wersję MarkItUp! rich text editor w aplikacji MVC i wszystko działa dobrze z wyjątkiem podglądu. W ustawieniach (set.js) znajduje się właściwość previewParserPath ("ścieżka do parsera BBCode"). Nie jestem do końca pewien, czego szuka w kwestii poprawnej integracji z aplikacją MVC.Integracja podglądu edytora tekstu w formacie MarkItUp z aplikacją ASP.NET MVC

Wierzę, że ten obiekt jest tym, co pozwala na renderowanie tekstu pojawiać się jako HTML zamiast [code][/code] itp

w moim kontrolera, stworzyłem następujące:

[AcceptVerbs(HttpVerbs.Get)] 
[ValidateInput(false)] 
public String ParseCode(string toBeParsed) 
{ 
    return BBCode.ToHtml(toBeParsed); 
} 
+1

Czy próbowałeś ustawić 'previewParserPath' na'/ControllerName/ParseCode'? – Omar

+0

Nie, nie mam. Dam ci szansę. – RSolberg

Odpowiedz

7

Patrząc na MarkItUp documentation

previewParserPath string> ścieżka można ustawić ścieżkę do własnego parsera podgląd wyniku znaczników języka innego niż html. Jeśli ta właściwość zostanie ustawiona, wbudowany podgląd zostanie zastąpiony przez własny skrypt podglądu. Użyj ~/dla markItUp! korzeń.

previewParserVar string> default: data Nazwa pliku var opublikowanego wraz z treścią edytora do zdefiniowanego powyżej parsera.

Więc zakładam ustawić previewParserPath do /MyController/ParseCode gdzie MyController jest kontroler z działaniem analizowania. Również ustawić previewParserVar do toBeParsed

Uwaga: Nie jestem pewien, czy MarkItUp robi się POST lub GET do parsera, tak by usunąć AcceptVerb[HttpVerbs.Get] ze swojego działania. Zakładam jednak, że używa on POST.

+0

Słodki! Poprawiłem podglądParserPath, aby użyć "/" zamiast "\" powyżej! – RSolberg

0

Napotkałem ostatnio ten problem i postanowiłem tylko zastąpić kliknięcie przycisku podglądu za pomocą modułu obsługi jQuery, który przechwytuje podgląd HTML za pośrednictwem AJAX z mojego własnego narzędzia WebMethod i zapisuje wynikowy kod HTML w oknie dialogowym interfejsu użytkownika jQuery.