سؤال

أستخدم CKEditor لإدخال أوصاف نصية منسقة في طرق عرض مختلفة.تبدو علامات ckeditor الخاصة بي

<ckeditor:ckeditorcontrol id="CKEditor1" runat="server" toolbar="Basic" />

اسمحوا لي أن أشير إلى المشكلات التي أواجهها:

  • على الرغم من أن شريط الأدوات الخاص بي أساسي، إلا أنني أحصل على شريط أدوات كامل الخيارات للمحرر.
  • في عرض التحرير، يجب أن يكون الوصف موجودًا في ckeditor كنص خاص به.كيف يمكن القيام بذلك.يتم إعطاء مربع النص لاسم التعليمات كـ <%=Html.TextBoxFor(m => m.InstructionName, new { @class="formstyle"} )%> الذي يعرض InstructionName في طريقة عرض التحرير.الذي يعمل بشكل جيد.أريد نفس الشيء مع InstructionDesc وهو ckeditor.

حاولت

<CKEditor:CKEditorControl ID="CKEditor1" runat="server" Toolbar="Basic" name="docDesc" Text=<%=Model.DocDesc %> />

ولكن هذا هو رمي الخطأ:

حدث خطأ أثناء تحليل المورد المطلوب لخدمة هذا الطلب.يرجى مراجعة تفاصيل خطأ التحليل المحددة التالية وتعديل الملف المصدر الخاص بك بشكل مناسب.

رسالة خطأ المحلل:لا يمكن أن تحتوي علامات الخادم <% ... %> يبني.

الرجاء مساعدتي في حل هذه القضايا.شكرا لك مقدما.

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

المحلول

ربما ستحتاج إلى الابتعاد عن استخدام عنصر التحكم في نمط asp.net وإنشاء منطقة نص إما يدويًا أو من خلال مساعد HTML.نقوم باستيراد جافا سكريبت CKEditor في رأس صفحتنا الرئيسية ثم ما يلي في العرض عند استخدام CKEditor:

<%= Html.TextAreaFor(m=>m.InstructionDesc) %>
<script type="text/javascript">CKEDITOR.replace('InstructionDesc');</script>

يجب أن يحول ذلك منطقة النص إلى مثيل CKEditor.يجب أن يتطابق الاسم الموجود داخل الاستبدال مع معرف منطقة النص.

نصائح أخرى

هل أنت متأكد من إمكانية استخدام عنصر التحكم هذا مع ASP.NET MVC؟

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