Autor Zpráva
zacatecnik
Profil
Ahoj,
nevíte zda je možné pomocí AJAXU (bez frameworků typu JQuery) načíst obsah divu, který je na stránce, na kterou pošlu třeba přes get data?

Myslím tím to, že v nějakém blabla.php bude:
<?php echo '<html><head></head><body><div id="mujdiv"> OBSAH DIVU </div></body></html>';?>
A pomocí AJAXU bych chtěl z té stránky dostat jen to "OBSAH DIVU" bez toho, co je kolem tohoto divu.
Radek9
Profil
zacatecnik:
Pokud by to bylo formátováno jako validní XML, můžeš se k tomu z requestu dostat přes responseXML. Nebo případně regulárem z responseText.
Keeehi
Profil
A nemůže být v blabla.php jen <?php echo ' OBSAH DIVU ';?> ? Pokud máš ten php script pod kontrolou, tak to rozhodně tak uprav. Vžyď to může vypadat třeba takto:
if ( empty($_GET["ajax"]) ) {
    echo '<html><head></head><body><div id="mujdiv"> OBSAH DIVU </div></body></html>';
}
else {
    echo ' OBSAH DIVU ';
}
pokud potřebuješ mít na té adrese obě verze.
zacatecnik
Profil
Abych to mohl udělat tak jako ukazuješ Keeehi, tak bych takový kód musel dát na místa kde by se taková podmínka spouštěla při každém zobrazení webu a je podlě mě trochu špatné... Takže to fakt nejde ? Prostě vytáhnout jen div pomocí AJAXU?
Chamurappi
Profil
Reaguji na zacatecnika:
kde by se taková podmínka spouštěla při každém zobrazení webu a je podlě mě trochu špatné
Mně přijde špatné stahovat celou obyčejnou stránku, když z ní potřebuješ jen kousek.

Takže to fakt nejde ?
Můžeš si to vytáhnout regulárním výrazem.
Keeehi
Profil
zacatecnik:
Důležité sdělení je „pokud potřebuješ mít naadrese obě verze“, tzn. že vyžaduješ aby požadavky směřovaly na tu samou adresu. Ale to přece není vůbec podstatné. Já jsem to dříve řešil tak, že jsem měl script ajax.php a v něm něco takového:
<?php
switch ( $_GET["pozadavek"] ) {
    case "obsah" : echo " OBSAH DIVU "; break;
    case "servrovy_cas" : echo date("d.m.Y H:i:s"); break;
    case "info_user" : // třeba vrátí údaje o uživateli, nejlépe ve formátu JSON
    ....
}

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: