frickle
13.10.2008, 13:24:24
Witam
Być może ktoś będzie w stanie pomóc mi w takiej oto sprawie:
Mam stronę obsługiwaną AJAX-em. Problem w tym, że na tejże stronie, znajduje się bardzo dużo różnych formularzy. Ponieważ rozmieszczenie pól musi być zgodne z projektem, elementy formularzy są pozycjonowane absolutnie. Co za tym idzie, każdy formularz ma swojego css-a. Nie chciałbym łądować tych wszystkich css-ów na początku i teraz pytanie:
Czy istnieje możliwość dynamicznego "doładowania" stylu dla strony którą sobie doładowuję przez AJAX?
Z góry dzięki za wszelkie sugestie.
wookieb
13.10.2008, 13:39:45
Da się.
ładujesz do ajaxa plik ze stylami a nastenie wrzucasz do w tag <style>
frickle
13.10.2008, 16:44:54
Niestety
Załadowałem, sprawdziłem że styl się załadował (to znaczy jest w odpowiednim tagu) i bryndza.
Może jakieś inne sugestie?
wookieb
13.10.2008, 17:07:51
Pokaż kod.
Moj przykladowy
test.php
<?xml version="1.0" encoding="iso-8859-2"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl"> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> #text
{
background-color: red;
}
<script type="text/javascript"> function zaladuj()
{
advAJAX.post({
url:'ajax.php.txt',
onSuccess:function(obj)
{
document.body.innerHTML+='
<style>'+obj.responseText+'
</style>';
}
})
}
<div id="test" onclick="zaladuj();"> heheheh
</div>
ajax.php.txt
Kod
#test
{
background-color: #000000;
color: #ffffff;
}
frickle
13.10.2008, 18:19:36
Dobra, działa. Próbowałem to zrobić w inny sposób. A mianowicie wstawiłem pusty tag <style></style> i do środka ładowałem styl, ale w ten sposób nie działało. Twój jest OK. Sprawdziłem i działa. Dzięki.