Ajax Css IE problema
Kezdo vagyok az ajaxban. Ma csinaltam 1 oldalt ajax segitsegevel ujra toltok rajta dolgokat ezek meg is jelennek de a a css nem erzekeli oket IE-alatt, valamint a kiirt javascript nem jelenik meg gondolom az nem fut le.Megoldasokat keresek :D
Elore is koszonom
■ Elore is koszonom
Delphoi...
KOD
var xmlHttp
function loadContent(pageNr,divID)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
var url="php/loadcontent.php";
url=url+"?q="+pageNr;
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function stateChanged()
{
if (xmlHttp.readyState==4)
{
document.getElementById("rightColumn").innerHTML=xmlHttp.responseText;
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
///////////////
PHP
<?php
include('database.php');
$ab = new Adatbazis();
if ($ab->connect()) {
// echo "kapcsolt<br />";
} else {
// echo "nem kapcsolt<br />";
}
if ($ab->selectDatabase('vidcol_99k_org_db')) {
// echo "ab kivalasztva<br />";
} else {
// echo "ab kivalasztas hiba<br />";
}
$sql = "SELECT * FROM videos Where id=1 " ;
$res = $ab->command($sql);
if (!$res) {
// echo 'command hiba<br />';
// echo $ab->getError();
} else {
while($row = mysql_fetch_array($res))
{
echo ' <div class="block"<h1>'.$row['name']. '</h1>
<div class="adsense">
<script type="text/javascript"><!--
google_ad_client = "pub-2573594588939938";
/* 120x240, created 3/30/08 */
google_ad_slot = "8935271001";
google_ad_width = 120;
google_ad_height = 240;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>'.
$row["link"].
' </div>';
}
}
$ab->disconnect();
?>
A IE ben nem valtozik meg a h1 merete es szine
A google hirdetes pedig nem jelenik meg sehol sem.
Megvan
ezt az eval()-os dolgot kifejtened??
Biztosan AJAX kell neked?
Több sebből is vérzik a kódod, pl. globális ajax objektumod van, ez érdekes hibákhoz vezethet, ha egyszerre több ajax hívást indítasz, de ez most lényegtelen.
Szerintem jobban járnál, ha ezt nem ajax-szal hanem sima iframe-mel oldanád meg, mert így csak bonyolultan lehet megoldani a problémát:
* regexp-ekkel kiszeded a responseText-ből a <script> ... </script> blokkok közti részeket és ezeket eval-ozod
* dom xml-t adsz vissza és eszerint frissíted a tartalmat.
* json strukturát használsz, a script elemeket eval-ozod
* prototype.js-t használsz és annak evalScripts tulajdonságát
Legegyszerűbb megoldás a prototype.js abban kb. ennyi a dolog: