2009-08-27 7 views
1

Bon, j'ai un travail à faire avant demain matin ..obtenir ou données post dans jquery (show url en ligne du navigateur)

je travaille sur certains jquery. Où je charger des données de fichiers externes ..

Ce que je veux vraiment savoir, est comment vais-je charger des données quand je .post $/ou $ .get des données par jquery

Envoyer la demande en jquery <a href="javascript:;" onclick="$.view.load('prices');">hey </a>

et en même temps changer le navigateur url à ex. mywebsite.com/prices/ sans faire l'actualisation sur la page

est-ce possible, et comment faire?

// edit (not working) 

    <li><a href="/prices" onclick="$.view.show('prices');"> <span>prices</span></a></li> 

jquery: $('a.prices').click(function(e) { 
      e.preventDefault(); 
      $.view.show('prices'); 
     });` 

mais peut voir que certains des échantillons d'autres ne sont pas faciles à faire fonctionner ..

+0

Qu'est-ce que $ .view? –

Répondre

1

Pour autant que je sache, vous ne pouvez changer l'URL de la pièce d'ancrage (www.url .com/# anchor), et rien d'autre (sans actualisation du navigateur). Peut-être que vous pouvez utiliser SWFAddress pour vos fins?

2

Vous pouvez utiliser un plugin jQuery appelé URL Utils - il y a aussi un bon screencast qui vous montre comment l'utiliser.

4

Vous pouvez le faire comme ceci:

<a href="mywebsite.com/prices/" class="priceLink">hey</a> 

$('a.priceLink').click(function(e) { 
    e.preventDefault(); 
    $.view.load('prices'); 
}); 

Lorsque l'utilisateur clique sur le lien, l'URL normale sera affiché sur la ligne du navigateur, mais ne serez pas visité (à cause de preventDefault) et $.view.load('prices'); volonté charger ainsi dans ce contenu sans actualiser la page.

EDIT: @William - s'il vous plaît essayez ceci:

<li><a href="/prices" class="prices"><span>prices</span></a></li> 

    $('a.prices').click(function(e) { 
     e.preventDefault(); 
     $.view.show('prices'); 
    }); 
+0

En prime, les liens copiés fonctionneront également comme prévu. –

+0

... et ces liens sont visitables si Javascript est désactivé/indisponible. – karim79

+0

son ne fonctionne pas: -/ il suffit de m'envoyer à une page introuvable ... :( – william

0

i trouvé la solution !!

http://nix.lv/history/demo.html

m'a pris environ 10 minutes à installer, et il fonctionne à merveille .. (je l'ai fait un certain mod)

solution:

<li><a href="/prices" rel="history" class="prices"><span>prices</span></a></li> 

jquery (télécharger le plugin sur le lien ci-dessus):

$.history.init(pageload); 

    // PageLoad function 
function pageload(hash) { 

    // hash doesn't contain the first # character. 
    if(hash) { 
     $.view.show(hash); // load pages 
    } else { 
     // start page 
     $.view.show(load_from_start); 
    } 
} 

l'essayer .. :)

Questions connexes