Je cherche une bonne stratégie pour insérer environ 2500 tuples noms firstName lastName (600KB) à partir d'un appel AJAX. Le délai expire après la fin de l'appel AJAX et pendant le stockage des données dans la base de données localstorage. Les données sont au format XML. Ce que je fais est maintenant convertir les données XML en un objet en faisant une jQuery.each() sur les données avec cela,Eviter les délais d'attente sur l'iPhone
associateNames[index] = {
firstName:jQuery(value).find("First").text(),
lastName:jQuery(value).find("Last").text(),
id:jQuery(value).find("ID").text()
};
Puis je passe cet objet à une fonction qui crée une table et insère ces données . La partie principale de cette fonction est.
query2.executeSql('CREATE TABLE directory (id unique, fullName)', [],
// On Success
function(query, result) {
jQuery.each(data, function(index, value) {
var querySQL = 'INSERT INTO directory (id, fullName) VALUES (' + value.id +
', "'+ encodeURI(value.firstName) + encodeURI(value.lastName) + '")';
query.executeSql(querySQL);
});
},
L'iPhone ne prend pas en charge les travailleurs Web. Il devrait y avoir un moyen d'utiliser setInterval() et de traiter des morceaux de données à la fois, mais je suis bloqué. S'il vous plaît laissez-moi savoir si vous avez une idée.
Merci!
C'est exactement ce dont j'avais besoin. Merci. – sissonb