Bonjour,
Je suis en train de développer une application de test en JQuery Mobile (je débute...).
J'ai un listview avec dedans 2 <li> contenant chacun un class="ui-li-count". Le but étant naturellement d'afficher à l'utilisateur le nombre de lignes qu'il aura ensuite en cliquant sur un li.
Mon code est structuré de la façon suivante :
Dans cet ordre, ça ne marche PAS.
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 init:function(){ db.transaction(function(tx) { tx.executeSql('SELECT *** FROM ...', [], function(tx, data) { for(var i = 0; i < data.rows.length; i++) { // Append les <li> au <ul> } //Affichage du nombre $('#span-nb-A').html( data.rows.length); }; }; db.transaction(function(tx) { tx.executeSql('SELECT *** FROM ...', [], function(tx, data) { for(var i = 0; i < data.rows.length; i++) { // Append les <li> au <ul> } //Affichage du nombre $('#span-nb-B').html( data.rows.length); }; }; };
Si je mets chaque tx.executeSQL dans un db.transaction séparé ça marche.
En gros :
----> NE MARCHE PAS
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 db.transaction(function(tx) { tx.executeSql('SELECT *** FROM ...', [], function(tx, data) { A; }; tx.executeSql('SELECT *** FROM ...', [], function(tx, data) { B; }; });
----> MARCHE
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 db.transaction(function(tx) { tx.executeSql('SELECT *** FROM ...', [], function(tx, data) { A; }; }); db.transaction(function(tx) { tx.executeSql('SELECT *** FROM ...', [], function(tx, data) { B; }; });
Avez-vous une idée d'où vient le problème ? J'arrive à le contourner mais je voudrais comprendre.
Merci,
Partager