Ja das ist ein Bug und der ist bekannt. Ich kämpfe schon seit Wochen mit dem Problem und habe auch schon daran gedacht zu downgraden. Es Nervt Tierisch - Generell alle Dynamischen Renderings wie z.B. innerHTML etc. gehen nicht wenn man nur den CDATA Node neu Schreibt.
PHP-Code:
function XMLRequester( u, o, mh, ge, t )
{
var url = unescape(u);
var xo = INITXMLRequester();
var out = '';
if ( ! is_moz )
mh.innerHTML = lng['PLEASEWAIT'];
var listener = function()
{
if ( is_moz )
dump("Content-Type: " + xo.getResponseHeader("Content-Type") + "\n");
switch( xo.readyState ) {
case 0:
mh.innerHTML = lng['AJAXWAITRESPONCE'];
case 1:
mh.innerHTML = lng['AJAXDATASEND'];
case 2:
mh.innerHTML = lng['AJAXWAITRESPONCE'];
case 3:
mh.innerHTML = '';
break;
case 4:
if ( xo.status == 200 ) {
mh.innerHTML = '';
var da = xo.responseText;
if( da.length > 1 ) {
// alert( unescape( da ) + " " + ge );
if ( t ) {
/** BUGFIX:KHTML 3.5.3 Konqueror need a event befor innerHTML! */
if ( ge.hasAttributes ) ge.style.display = '';
ge.innerHTML = eval( unescape( da ) );
} else
ge.value = eval( unescape( da ) );
} else {
ge.innerHTML = lng['AJAXEMPTYDATA'] + da;
}
/** BUGFIX:Opera need explicit to destroy XMLHttpRequest */
if ( is_opera )
xo.abort();
} else if ( xo.status == 403 ) {
mh.innerHTML = lng['AJAXSERVERERROR'];
}
}
}
if ( o.length >= 3 ) {
xo.open( "POST", encodeURI( url ), true );
xo.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded' );
xo.setRequestHeader( 'Accept-Charset', 'utf-8, unicode-1-1;q=0.8' );
xo.setRequestHeader( 'Accept', 'text/plain, text/html, application/xhtml+xml' );
xo.setRequestHeader( 'Content-Length', o.length );
xo.onreadystatechange = listener;
xo.send( o );
} else {
alert(lng['MISSINGAJAX']);
}
return false;
}
Lesezeichen