سؤال

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

أنا جديد في Spring، وبناءً على توجيهات أحد كبار السن، طُلب مني استخدام زر إدخال لكل علامة تبويب بالصيغة التقريبية التالية:

<input type="submit" name="${form.selectionValues.tabSelection}" value="1" />

لم يتم تعيين خاصية نموذج tabSelection لكائن SelectionValues.لم أكن متفاجئًا؛) لم أكن أعتقد أن هذا سينجح.

لذلك أتساءل كيف يمكنني إرسال منشور مرة أخرى من زر في Spring يحتوي على قيم النموذج بالإضافة إلى معلمة وقيمة tabSelection إضافية؟كيف يمكنني ترميز هذه الآلية؟هل يجب علي أن أفعل أي شيء لوحدة التحكم في النموذج لتسجيل هذه المعلمة الإضافية؟

كان الترميز الأصلي الذي كنت أستخدمه لإنشاء هذه الصفحة يستخدم علامات ربط HTML بدلاً من أزرار روابط علامات التبويب، وهو ما سيكون أفضل بكثير بالنسبة لـ CSS، هل هناك أي طريقة لتشغيل إرسال نموذج كامل باستخدام مرساة href؟أعلم أن هذا سيكون طلب GET بدلاً من POST، ولن يرتبط بالنموذج.لذلك لا أتوقع أن ينجح هذا..مجرد محاولة للتفكير في الحلول!أفضل استخدام العلامات الأولية، حيث أن الأنماط موجودة.

سيكون موضع تقدير أي مساعدة

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

المحلول

إذا تم استخدام علامة نموذج الربيع مثل هذا، مثال يعمل على النحو التالي:

<form:form commandName="someCommand">
    ...
    <input type="submit" name="${someCommand.selectionValues.tabSelection}" value="1"/> 
</form:form>

${} ليس حقل ربط، لذلك تحتاج إلى استخدام كائن الأمر ككائن نموذج عادي.

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