سؤال

أنا أختبر مميز! معالج النصوص في تطبيق MVC ، وكل شيء يعمل بشكل رائع باستثناء المعاينة. في الإعدادات (set.js) ، هناك أ previewParserPath الخاصية ("الطريق إلى الخاص بك BBCode محلل "). لست متأكدًا تمامًا مما يبحث عنه هذا من حيث التكامل المناسب مع تطبيق MVC.

أعتقد أن هذه الخاصية هي ما يسمح بتقديم النص ليظهر كـ HTML بدلاً من [code][/code] إلخ.

في وحدة التحكم الخاصة بي ، قمت بإنشاء ما يلي:

[AcceptVerbs(HttpVerbs.Get)]
[ValidateInput(false)]
public String ParseCode(string toBeParsed)
{
    return BBCode.ToHtml(toBeParsed);
}
هل كانت مفيدة؟

المحلول

النظر إلى العلامات توثيق

معاينة PareParserPath> المسار يمكنك تعيين مسار من المحلل الخاص بك لمعاينة نتيجة التمييز لانغسات غير HTML. إذا تم تعيين هذه الخاصية ، فسيتم تجاوز المعاينة المدمجة بواسطة البرنامج النصي الخاص بك المعاينة. استخدام ~/ للتمييز! جذر.

معاينة PareParservar> الافتراضي: اسم بيانات VAR المنشور مع محتوى المحرر إلى المحلل المحدد أعلاه.

لذلك أفترض أنك ضبطت previewParserPath ل /MyController/ParseCode أين MyController هو وحدة التحكم مع إجراء التحليل الخاص بك. أيضا ، مجموعة previewParserVar ل toBeParsed

ملاحظة: لست متأكدًا مما إذا كان Markitup يفعل POST أو GET إلى المحلل ، لذلك أود إزالة AcceptVerb[HttpVerbs.Get] من عملك. سأفترض أنه يستخدم POST رغم ذلك.

نصائح أخرى

لقد واجهت هذه المشكلة مؤخرًا وقررت فقط تجاوز زر المعاينة ، انقر فوق معالج jQuery الذي يمسك بالمعاينة HTML عبر Ajax من webmethod الخاص بي ويكتب HTML الناتج إلى مربع حوار jQuery UI.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top