tengo una función que muestra el texto que le pasas en un div de la página.
El problema que tengo es que cuando le paso un texto con un salto de linea me dice que hay un error, por lo demás funciona bien.
¿cómo podría solucionar esto?
![Pensando](http://static.forosdelweb.com/fdwtheme/images/smilies/scratchchin.gif)
Un saludo!
| ||||
Fijate si anda Proba de sacarle al string antes de mandarlo los saltos de linea. Podes hacerlo con esto texto = texto.replace (chr(13),"|"); una vez que lo pasas a la funcion lo volves a reemplazar como estaba antes. Espero que sirva ![]() |
| |||
Hola TomaHawkk , lalogrosz : sería interesante saber cómo se muestra el texto. FF no acepta saltos de línea en un alerta, por ejemplo. Por otro lado, el salto de línea no es solamente el caracter 13. retorno de carro javascript saludos furoya |
| ||||
Hola, Con el replace no me funciona, me da un error. No lo quiero mostrar en un alert, quiero pasarlo a una función y que me la muestre en un div con innerHtml. Alguna opción más? Un saludo.
__________________ ThE MaTriX HaS YoU |
| |||
¿Averiguaste por qué da error con replace?. ¿Leíste que los navegadores escriben dos caracteres por cada "salto de línea"? ¿Sabes que el salto de línea que estamos mencionando no se ve con innerHTML, ya que en ese lenguaje se usa la etiqueta BR ? Como no pones ejemplo del código voy a dejarte uno para que experimentes. El innerText no funciona en Mozila.
Código:
saludos<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <script> var texto = "QWERTYUIOP \r\n<br>\r\nQWERTYUIOP"; function llenaUno(){ document.getElementById("divUno") .innerHTML = texto; } function llenaDos(){ document.getElementById("divDos") .innerHTML = document.getElementById("divUno") .innerHTML; } function llenaTres(){ document.getElementById("txtUno") .value = document.getElementById("divUno") .innerHTML; } function llenaCuatro(){ document.getElementById("txtDos") .value = texto; } </script> <style> div{border:solid 5px black; height:20px} textarea{width:100%; height:100px} </style> </HEAD> <BODY> <p> <input type="button" value="CLICK PARA LLENAR EL PRIMER DIV CON TEXTO" onclick = "llenaUno()"> <br> <div id="divUno"></div> </p><p> <input type="button" value="CLICK PARA LLENAR EL SEGUNDO DIV CON TEXTO DE PRIMER DIV" onclick = "llenaDos()"> <br> <div id="divDos"></div> </p><p> <input type="button" value="CLICK PARA LLENAR EL TEXTAREA CON HTML DE PRIMER DIV" onclick = "llenaTres()"> <br> <TEXTAREA id="txtUno"></textarea> </p><p> <input type="button" value="CLICK PARA LLENAR EL TEXTAREA CON TEXTO ORIGINAL" onclick = "llenaCuatro()"> <br> <TEXTAREA id="txtDos"></textarea> </p> </BODY></HTML> furoya |
| ||||
Hola, mi funcion:
Código:
Llamada a la función:function MostrarNotas(sTexto, sPersona) { var oDiv; oDiv = document.getElementById("divNotas"); if (oDiv != null) { oDiv.innerHTML = '<B><%=getString("Texto_9")%> ' + sPersona + ':</B><BR>' + sTexto + '</span>'; } }
Código:
Problema: <input type="button" onclick="MostrarNotas(sTexto,sPersona);" value="Notas"> Cuando sTexto tenía un retorno de carro fallaba la función. Ese parámetro se lee de un archivo Xml generado en Asp. Solución: Quitar Retorno de carro con un "Replace" y posteriormente utilizar "Server.HTMLencode" para que el Xml se forme correctamente y después no de problemas al pasarlo a la función en JavaScript. Gracias por la ayuda, ![]() ![]() Un saludo.
__________________ ThE MaTriX HaS YoU |