Bonjour,

Je travaille sur une page permettant de saisir un tableau pouvant atteindre une volumétrie relativement importante (+ d'une centaine de lignes). Je peux donc me retrouver assez facilement avec 400 inputs et combo box (et peut être radio boutons) sur ma page, et là, ça pédale dans la semoule.
Donc je cherche à réduire le nombre de données à mettre à jour au minimum, idéalement uniquement les nouvelles données ou celles modifiées.

Pour le moment je suis parti sur une solution javascript pour ne soumettre que les inputs modifiés :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
                        /**
                         * disableUnmodifiedInputs
                         *
                         * Disable the input fields that haven't been modified by the user, and thus that don't need to update the associated bean.
                         */
                        function disableUnmodifiedElements()
                        {
                            var form = document.getElementById( 'TPZBodyForm' );
 
                            for ( i = 0; i != form.elements.length; i++ )
                            {
                                node = form.elements[i];
                                if ( !isInputModified( node ) )
                                {
                                    if ( node.tagName == 'input' )
                                    {
                                        // inputText components.
                                        if ( node.type == 'text' )
                                        {
                                            node.disabled = true;
                                        }
                                        // selectOneRadio components.
                                        else if ( node.type == 'radio' )
                                        {
                                            node.disabled = true;
                                        }
                                    }
                                    // selectOneMenu components.
                                    else if ( node.tagName == 'select' )
                                    {
                                        node.disabled = true;
                                    }
                                }
                            }
                        }
Le problème c'est que ça ne marche pas dans le cas des combo box :/
Et même si je laisse les combos être soumises à chaque fois, j'ai peur d'avoir des problèmes de performances vu la volumétrie.

Je pensais aussi dupliquer sur le seveur mon bean de données, mettre tous mes champs en immediate et utiliser mon bouton de submit pour écraser les anciennes valeurs. Après je ne suis pas persuadé que ça rende terrible :/
Est ce que quelqu'un a déjà été confronté au même problème et/ou aurait une solution ou une piste à me proposer ?

Thomas

PS: Je ne peux pas paginer ma table
PPS: JSF 1.2 et RichFaces 1.3.4.