سؤال

يعجبني Stack Overflow Comment UI كثيرا وأنا أبحث في تنفيذ نفس الشيء على موقع الويب الخاص بي. نظرت إلى الكود ويبدو أن الأداة الرئيسية هنا WMD., مع جيس textarea resizer. لعب دور دعم.

يحول WMD تخفيض السعر إلى HTML على جانب العميل. هذا لطيف جدا لأنه يساعد مع معاينة لكنني أركض تحديا عند إرسال ذلك إلى الخادم. إذا كان هناك خطأ في التحقق من الصحة (قل قد أدخل المستخدم عنوان بريد إلكتروني غير صالح في جزء آخر من نموذج التعليق، أو لم يدخل اسمه)، فربما يستجيب الخادم بواسطة Redisplaying النموذج مع رسالة خطأ و شكل حقول prepopulated. فقط الآن نص التعليق هو HTML، وليس علامة تجارية، لأن الخادم لم ير حتى الانتصار. لكن أود أن أكون علامة تجارية لأن هذا ما يدخله المستخدم.

أي أفكار هنا؟

لقد فكرت في أفكار مختلفة:

  • هل جانب الخادم تحول HTML-To-Markdown. وبعد ليس متحمسا لهذه الفكرة. يبدو أن Hokey لتحويل من علامة التقديم إلى HTML مرة أخرى إلى علامة التقديم مرة أخرى، وكمستخدم أجده دائما أنه مزعج عند إعادة تهيج البرنامج النصي / الرمز النصي.
  • التحقق من صحة الجانب العميل (لزيادة التحقق من جانب الخادم، الذي كنت سأحتفظ بالطبع). يبدو وكأنه اتجاه معقول على الرغم من أنني حاليا أنا أستخدم ReCAPTCHA على أشكال تعليقي، مما يعني أنني بحاجة إلى نشر جزء recaptcha على الأقل إلى خادم.
  • تفقد WMD واستخدام markdownj. لتحويل علامة التقديم إلى HTML على الخادم. أحتاج إلى البحث عن بعض الآلية الأخرى لإنجاز وظيفة المعاينة، والتي أريد الاحتفاظ بها.

من الناحية المثالية، يكون هناك طريقة للاحتفاظ بها في إصدار علامة التسجيل من النص وإرسال ذلك إلى الخادم بالإضافة إلى HTML، لكنني لا أقصى لرجل JavaScript لمعرفة ما إذا كان هذا هو احتمال حقيقي.

أي اقتراحات نقدر.

هل كانت مفيدة؟

المحلول

انظر هذا السؤال: تحويل HTML مرة أخرى إلى علامة التحرير في WMD (YAY ل "مربع" ذات الصلة "على NAV اليد اليمنى!).

نصائح أخرى

وأود أن أرسل البيانات كمسقط من ذلك، ثم دع الخادم يحوله إلى HTML عند مرور الصحلات. يحتوي WMD على خيار لتحديد تنسيق البيانات التي سترسلها إلى الخادم. فقط اضف

wmd_options = {
        //Markdown or HTML
        output: "Markdown"
    };

قبل الدعوة إلى WMD

لقد بحثت فقط في WMD على مستوى سريع، لكن تقديم Textarea إلى الخادم يبدو مستقيما للغاية - في الواقع، بالكاد أرى كيف يمكنك تجنب ذلك إذا كان Textarea جزء من النموذج الخاص بك. كما أفهمها، يحتوي Textarea على علامات، ويحول WMD إلى HTML لعرضه في جزء آخر من صفحتك. ما عليك سوى تضمين TextArea في النموذج الذي يتم إرساله ويجب رؤيته على جانب الخادم.

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