2017-09-28 2 views
0

Dans Primefaces, je veux obtenir une liste de Widget qui est "InputSwitch" ou autre chose. Comment pourrais-je faire ça?Dans Primefaces, comment obtenir un widget par type de widget en javascript

En Primefaces, je vois une liste de widgets qui est dans la page par le code:

PrimeFaces.widgets 

Ou obtenir un widget par id

PrimeFaces.getWidgetById("someId"); 

Mais je ne sais pas comment obtenir un liste widget par exemple un widget type comme PrimeFaces.widget.InputSwitch

Répondre

1

en PrimeFaces, ils prennent en charge jQuery, et pour obtenir un objet jQuery simplement:

PrimeFaces.widgets["someWidgetVar"].getJQ() 

Une façon simple d'archiver obtenir une liste des InputSwitch est

for (item in PrimeFaces.widgets) { 
    widget = PrimeFaces.widgets[item]; 
    if (widget.getJQ().hasClass('ui-inputswitch')) { 
     list.push(widget); 
    } 
} 

Avec 'ui-inputswitch' est la classe CSS du composant PrimeFaces.

+1

'if (widget instanceof PrimeFaces.widget.InputSwitch) {list.push (widget);}' fonctionne aussi. Ici, vous ne comptez pas sur le css mais sur le type de widget, donc c'est dans mon avis (pas si) le meilleur choix – Kukeltje