سؤال

لقد قمت بتطوير "Form Builder" في Javascript، ووصلت إلى الجزء الذي سأرسل فيه مواصفات النموذج مرة أخرى إلى الخادم ليتم تخزينه.يحتفظ المنشئ ببنية بيانات داخلية تمثل الحقول والتسمية والخيارات (للتحديد/مربع الاختيار/الراديو) والحالة الإلزامية وترتيب الفرز العام للحقول.

عندما أرغب في إرسال هذه البنية مرة أخرى إلى الخادم، ما التنسيق الذي يجب أن أقوم بتوصيله به؟

أيضًا، عند استعادة نموذج محفوظ على الخادم مرة أخرى إلى أداة إنشاء جافا سكريبت الخاصة بي، هل يجب علي تحميل البيانات بنفس التنسيق الذي أرسلته به، أم يجب إعادة بناء الحقول باستخدام أداة إنشاء البيانات createField() المهام؟

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

المحلول

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

نصائح أخرى

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

يبدو أن هذا هو السيناريو المثالي للاستخدام JSON كتنسيق تسلسل للخادم.إذا كنت تدرس عدد قليل أمثلة ليس من الصعب أن نفهم.

سأقوم بتنفيذ نوع من العرف text serialization ونقل نص عادي.كما قلت، يمكنك إعادة بناء المعلومات عن طريق إجراء العملية المعكوسة.

هناك الكثير من الناس الذين سوف يدفعون JSON.انها أخف وزنا بكثير من XML.شخصيا، أجد XML ليكون أكثر قليلا القياسية بالرغم من ذلك.ستواجه مشكلة في العثور على تقنية لا تدعمها من جانب الخادم XMLJavaScript يدعم ذلك على ما يرام أيضا.
يمكنك أيضًا السير في طريق مختلف تمامًا.نظرًا لأنك لن تقوم بإرسال المعلومات إلا عند اكتمال تصميم النموذج، فيمكنك القيام بذلك باستخدام form submit, لمجموعة من الحقول المخفية.قم بإنشاء حقولك المخفية باستخدام JavaScript وقم بتعيين القيم حسب الحاجة.
ربما يكون هذا هو الحل الأفضل إذا لم ترغب في التعامل معه JSON/XML على الاطلاق.

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