تدرس هذه المقالة بشكل أساسي المحتوى ذي الصلة لخانات الاختيار في إطار الدعامات. تستخدم خانات الاختيار على نطاق واسع في تطوير الويب ، كما هو مفصل أدناه.
كما هو موضح في الشكل أدناه ، فإن الفاكهة التي اختارها المستخدم حاليًا هي "الموز". انقر فوق الزر وقفز إلى واجهة التعديل لتعديله.
بعد القفز إلى واجهة التعديل ، يجب أن تكرر اختيار المستخدم (الموز) ، ثم يقوم المستخدم بفحصه مرة أخرى ، كما هو موضح في الشكل:
واجهة مكتب الاستقبال:
<Body> <form action = "checboxaction_test.action" method = "post"> الرجاء تحديد الفاكهة المفضلة لديك: <br> <إدخال type = "checkbox" name = "fruits" value = "banana"/> banana <type type = "checkbox" name = "fruits" value = اكتب = "إرسال" value = "انتقل إلى واجهة التعديل للتعديل"> </form> </body>
Checboxactaction.java رمز:
يمتد checboxactactace من الفئة العامة الإجراءات actureSupport {private static static fong serialversionuid = 1l ؛/*اسم الفاكهة المحددة بواسطة مكتب الاستقبال من خلال خانة الاختيار*/ثمار السلسلة الخاصة ؛ السلسلة العامة getfruits () {ثمار الإرجاع ؛ تمت إزالة*/system.out.println (this.getfruits ()) ؛/*احصل على السلسلة التي تمر من المقدمة (ملاحظة: يجب إزالة المساحات هنا ، لأن هناك مسافات بالإضافة إلى فواصل الفاصلة ، ولكن لا يمكن إزالة المساحات بواسطة trim ())*/////Sring this.getfruits (). /*يجب القيام بذلك لإزالة المساحات*/سلسلة Fruitstr = this.getfruits (). replaceall ("" ، "") ؛ system.out.println ("تتم إزالة السلسلة بعد إزالة المساحات: myfruits = new ArrayList <String> () ؛ لـ (int i = 0 ؛ i <fruit.length ؛ i ++) {myfruits.add (fruit [i]) ؛}/*احفظ مربع الاختيار المحدد من قبل المستخدم على الخريطة وإرساله إلى المقدمة*/actionContext.getContext (). وضع ("myfruits" ، myfruits) ؛/* */list <String> list = new ArrayList <String> () ؛ list.add ("banana") ؛ list.add ("Snow pear") ؛ list.add ("watermelon") ؛ ActionContext.getContext (). put ("list" ، list) ؛ report this.success ؛}}}}}}}}ملاحظة: تمر خانة الاختيار قيمة إلى الخلفية. السلسلة التي تم تمريرها عبارة عن سلسلة ذات مسافات ، لذلك يجب إزالة المساحات ، ولكن لا يمكن إزالتها باستخدام طريقة trim (). التأثير بعد استخدام طريقة trim (). على النحو التالي:
كما هو موضح في الصورة ، لا يوجد تأثير! ومع ذلك ، يمكننا استخدام طريقة replaceall () لاستبدال المساحات ، والتأثير كما يلي:
بالإضافة إلى ذلك ، من أجل عرض جميع خانات الاختيار (الفواكه) في واجهة التعديل ، نقوم بمحاكاة إخراج جميع القيم من قاعدة البيانات قيد التنفيذ ، ثم تمريرها إلى واجهة التعديل مع خانات الاختيار المحددة من قبل المستخدم.
تعديل الواجهة:
<Body> <form action = "checboxaction_test.action" method = "post"> الفاكهة التي حددتها: <br> <c: foreach eduit = "$ {list}" var = "list"> <input type = "checkbox" value = "$ {list}" <c: foreach items = "$ {myfruits}" var = "fr" "محدد": ""} </c: foreach>/> $ {list} </c: foreach> </br> <input type = "submit" value = "modify"/> </form> </body>ملاحظة: واجهة التعديل معقدة للغاية. أولاً ، هو اجتياز جميع خانات الاختيار (الفواكه) ، واستخدام حلقة Foreach في كل تعويم لتجاوز جميع خانات الاختيار (ثمار) المحددة من قبل المستخدم ، ثم استخدم عامل تشغيل العناصر الثلاثة لتحديد ما إذا تم تحديد خانة الاختيار الحالية من قبل المستخدم. إذا كان يتطابق ، تحقق من ذلك.
ما ورد أعلاه هو كل التفسير التفصيلي لرمز التفاعل الخلفية STRUTS2 في هذه المقالة. آمل أن يكون ذلك مفيدًا للجميع. يمكن للأصدقاء المهتمين الاستمرار في الرجوع إلى الموضوعات الأخرى ذات الصلة على هذا الموقع. إذا كانت هناك أي أوجه قصور ، فيرجى ترك رسالة لإشارةها. شكرا لك يا أصدقائك لدعمكم لهذا الموقع!