Hola, tengo en la db guardados unos datos, y los traigo con ajax (con xml) a un formulario, el problema es que el campo del textarea no carga la información de la db, el otro campo (nombre) lo carga bien.
Me fije con Firebug y si esta el comentario que tendria que llenarse, pero no se llena en el form como recien dije.
Solamente se llena cuando el comentario es de una sola linea (usando .value), si contiene más de una ya no se carga. También probe con innerHTML pero ni siquiera carga el de una linea.
El tipo del campo de la db del comentario es: longtext
Tengo un archivo html que contiene:
Código HTML:
<input type="button" value=":" name="input" onClick="FAjax2('completar.php','empresa='+document.getElementById('empresa').value);">
<input name="empresa" type="text" id="empresa" readonly />
<input name="nombre" type="text" id="nombre" readonly />
<textarea name="comentario" id="comentario" cols="40" rows="3"></textarea>
Código:
function FAjax2 (url,valores){
ajax=nuevoAjax();
ajax.open("POST", url,true);
ajax.onreadystatechange=function() {
if (ajax.readyState==4){
// Obtengo el XML y separo sus nodos
var resp=ajax.responseXML;
var javascript=resp.getElementsByTagName("javascript")[0].childNodes[0].data;
// Creo el nuevo JS
var etiquetaScript=document.createElement("script");
document.getElementsByTagName('head')[0].appendChild(etiquetaScript);
etiquetaScript.text=javascript;
}
}
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajax.send(valores);
}
completar.php
Código PHP:
<?
$xml="<?xml version='1.0' encoding='ISO-8859-1'?>";
$xml.="<code>";
$xml.="<javascript><![CDATA[
document.getElementById('nombre').value=\"$nombre\";
document.getElementById('comentario').innerHTML=\"$comentario\";
]]></javascript>";
$xml.="</code>";
header("Content-type: text/xml");
echo $xml;
?>
Les agradezco mucho su ayuda. Gracias.