2009-12-21 4 views
0

Que puis-je faire si je souhaite que le navigateur se "souvienne" des résultats de recherche demandés avec ajax? J'utilise le jquery plugin jQuery Adresse, mais je ne peux pas rassembler comment le faireurl hash avec les résultats de recherche utilisant l'adresse Jquery

est ici un extrait de code de ma soumission de formulaire:

var ajaxforms = { 
    searchoptions : function(){ 
     $('form#searchoptions').ajaxForm({ 
      url : base_url + 'search/categorysearch', 
      target : '#search_result', 
      beforeSubmit : blocksearchdiv, 
      success : revise_searchtable_onsuccess 
     }); 
    }, 
    searchfilters : function(){ 
     $('form#searchfilters').ajaxForm({ 
      url : base_url + 'search/filter', 
      target : '#search_result', 
      beforeSubmit : blocksearchdiv, 
      success : revise_searchtable_onsuccess 
     }); 
    }, 
    searchterm : function(){ 
     $('form#termsearch').ajaxForm({ 
      url: base_url + 'search/termsearch', 
      target : '#search_result', 
      beforeSubmit : blocksearchdiv, 
      success : revise_searchtable_onsuccess 
     }); 
    } 

et est ici la fonction de rappel revise_searchtable_onsuccess:

function revise_searchtable_onsuccess() 
{ 
    $(function(){ 
     $.tablesorter.defaults.sortList = [[0,1]]; 
     $('#tableresults').tablesorter(); 
    }); 
    $.address // don't know what comes next 
    unblocksearchdiv(); 
} 

aidez-moi à implémenter l'adresse jquery avec ceci; ou peut-être avez-vous implémenté cela avec d'autres plugins?

Répondre

1

La documentation de jQuery Address est disponible au jQuery Address - Docs. Vous êtes probablement intéressé par l'utilisation de $('a').address(), qui est utilisée pour changer l'URL utilisée dans <a>.

1

Je ne suis pas positif c'est ce que vous voulez, mais voici comment je reçois les résultats d'un hachage lorsqu'une page (URL) est chargée avec un hachage. Note, Ceci est JS pas JQ, mais à partir de là JQ tout ce que vous voulez.

Vous devrez repenser votre structure de hachage. Rendez-le facilement analysable avec .split() pour plusieurs valeurs.

Vérifier hachage

if(window.location.hash) { 
    var hash =window.location.hash.substring(1);// ignores # 
} 

À partir de là, parse la variable de hachage pour obtenir les informations, puis interroger la base de données pour obtenir les mêmes résultats que précédemment. Donc somepage.php # search = string_term = blah peut être divisé en vars en charge, puis en faire une requête

Questions connexes