2010-09-30 3 views
0

J'utilise la technique décrite here pour effectuer une mise à jour partielle de la page périodiquement. Ce que je me demandais est s'il est possible de faire une actualisation partielle de la page, mais pas rafraîchir certains éléments dans la div qui est en cours de rafraîchissement? J'ai quelques cases à cocher qui perdent l'état vérifié chaque fois que la page se rafraîchit. Je ne souhaite pas actualiser ces cases à cocher.Utilisation de jQuery pour actualiser une page partielle mais ignorer certains éléments

Répondre

2

Si chaque case a un identifiant, vous pouvez sauvegarder l'état avant le rechargement et le restaurer par la suite. Quelque chose comme:

var checkboxstate ; 
function saveCheckboxState() { 
    checkboxstate = new Array() ; 
    $('input:checkbox:checked').each(function() { 
     checkboxstate[checkboxstate.length] = this.id ; 
    }) ; 
} 
function restoreCheckboxState() { 
    for(var i=0;i < checkboxstate.length;i++) { 
     $('input:checkbox#' + checkboxstate[i]).each(function() { 
      this.checked = true ; 
     }) ; 
    } 
} 
+0

Je me demandais juste pourquoi écrire un espace avant le point-virgule? BTW, '[]' est plus court que 'new Array()'. Et vous pouvez également utiliser ['Array.push'] (https://developer.mozilla.org/fr/JavaScript/Reference/Global_Objects/Array/push), mais cela fonctionnera aussi. –

+0

J'ai commencé à le faire quand j'ai découvert que l'éditeur que j'utilisais sélectionnait le point-virgule avec le dernier élément de la ligne lorsque je double-cliquais dessus. Je pense que je faisais beaucoup de changements d'attributs de css à ce moment-là et pouvoir doubler cliquer pour sélectionner plutôt que faire glisser a vraiment économisé du temps. Depuis lors, c'est en quelque sorte devenu une habitude. – Gus

+0

Génial, c'est ce qu'il a fait. Merci! – Prabhu

Questions connexes