ICEACACE: ActionListeners متعددة لزر الأمر
-
19-09-2019 - |
سؤال
هل من الممكن الحصول على ActionClisteners متعددة على زر أمر؟
إن لم يكن هناك أي طريقة حول هذا؟
شكرا لمساعدتك!
المحلول
لا، يمكنك فقط إضافة طريقتين رد الاتصال بجانب الخادم:
actionListener
وaction
.
<ice:commandButton action="#{bean.navigateTo}" actionListener="#{bean.doSomething}"/>
actionListener
يجب أن يشير إلى طريقة عامة التي تعود void
ويأخذ ActionEvent كحجة. يتم استخدامه عموما في أي مهام غير مرتبطة بأي منطق الملاحة ولديها ميزة، لتزويدك بقيمة القديمة والجديدة (= تغيير) للتحكم. هذا هو المعنى الخاص في أدوات التحكم في الإدخال مثل خانات الاختيار.
action
يجب أن يشير إلى طريقة عامة ترجع String
دون أخذ أي حجج. ستفعل الطريقة كل ما نحتاج إليه للتنقل - على سبيل المثال التحقق من صحة إضافية (إذا لم يتم التعامل مع بعض Validator Basic JSF). النتيجة يجب أن تتطابق مع قواعد الملاحة من faces-config.xml
.
يجب أن تعطيك إمكانيات كافية للتعامل مع المهام المتعددة (التي أفترضها هي السبب الخاص بك لإجراء العديد من Action ActionS) داخل منطق الخادم الخاص بك.
بالإضافة إلى ذلك، إذا كنت بحاجة إلى القيام ببعض المهام من جانب العميل فقط، فيمكنك الاستفادة من العديد من خصائص JavaScript.