IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: vložení textu přes Ajax

Aktivity
Avatar
Lolek
Neregistrovaný
Avatar
Lolek:28.3.2013 12:15

zduř. potřeboval bych prosím poradit, jak při kliku na odkaz změnit určitou část textu na té samá stránce(bez přesměrování!!). díky

 
Odpovědět
28.3.2013 12:15
Avatar
Pavel Vosyka
Člen
Avatar
Pavel Vosyka:28.3.2013 23:15

Ahoj tak zaprvé, pokud to děláš přes odkaz musíš zabezpečit, aby se to při kliku nepřesměrovalo ale vyvolalo nějakou akci, takže:

<a href="http://vosanet.eu" onclick="moje_fce();return false;">odkaz</a>
//a ještě nějakej oddíl kam se to má vypsat
<div id="sem_vypsat"></div>

A pak v té funkci musíš nadefinovat to asynchronní loadovaní, říká se tomu AJAX. Nevím jak se to dělá v čistém JavaScriptu, ale v jQuery je to hračka - takže:

//Nezapomeň nalinkovat jQuery!
function moje_fce(){
var url = "stranka.html";
$.ajax({
        url: url,
        success: function (ziskana_data) {
                        $('#sem_vypsat').html(ziskana_data);
                }
        });
}

Více o ajaxu přes jQuery najdeš tady: http://api.jquery.com/jQuery.ajax/
Můžeš tam nastavit hromadu parametrů - třeba jak to posílat POST/GET, typ (xml, json, html, txt), co dělat v případě erroru - fakt spoustu.

Akorát, jestli jQuery nepoužíváš, bylo by zbytečný tuto knihovnu načítat jen kvůli jedné věci, když se dá nahradit čistým JS.

A ještě jeden poznatek - z bezpečnostních důvodů lze AJAXově načítat pouze soubory umístěné tam kde je také načtená stránka. Pokud to chceš z jiného serveru, musí ten server posílat v hlavičce tohle: "Access-Control-Allow-Origin: *".

Pro příště by bylo dobré uvádět znalosti, lépe se pak radí.

Nahoru Odpovědět
28.3.2013 23:15
"nikdy nepiš nic 2x" (updated 10 years after: "Není nic špatného na tom napsat něco 2x")
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.