Imprimir campo de texto

Tengo es siguiente código en java Script, pero lo extreaño es que en Mozilla Firefox funciona pero en I Explorer no. No se si de pronto hace falta algo o tengo malo algo, o si podrían ayudarme a implementarlo en CSS pero no se nada de este lenguaje. Gracias.
<script language="Javascript">
  function Imprimir_Contenido(nombre)
  {
  var ficha = document.getElementById(nombre);
  var Ventana_Impresion = window.open(' ', 'popimpr');
  Ventana_Impresion.document.write( ficha.innerHTML );
  Ventana_Impresion.print( );
  Ventana_Impresion.close();
  } 
</script>
<body>
<div id="pr">Esto es una prueba de impresión</div>
<a href="javascript:Imprimir_Contenido('pr')" >Imprimir</a>
</body>

1 respuesta

Respuesta
1
Yo personalmente uso librerías de javascript que te facilitan la vida.. lo que quieres hacer igual no lo puedes hacer con css sino con javascript.
Bajate jquery.. y la importas a tu página.. ¿ahora otra cosa que veo es que para que quieres abrir una ventana con un div?... lo que puedes hacer es mantener el div oculto.. con style="display:none" y en el script le cambias el estado a block.
<script language="Javascript">
  function Imprimir_Contenido(nombre)
  {
document.getElementById("pr").innerHTML = nombre;
$("#pr").css({'display':'block'});
  } 
</script>
<body>
<div id="pr" style="display:none">Esto es una prueba de impresión</div>
<a href="javascript:Imprimir_Contenido('pr')" >Imprimir</a>
</body>
Gracias por tu respuesta, Mira, lo que quiero es que se habrá la ventana de impresión para seleccionar la impresora y las propiedades de impresión, pero en Internet explorer no funciona.
El div lo uso solo para que sea un campo de texto específico el que se imprima, ese texto iría dentro del div.
Gracias, espero tu colaboración.
Aaaa eso es otra cosa... rara imprimir deberías enviar la info a una ventana.. y usar window. Print yo nunca lo he usado pero aqui puedes conseguir informacion al respecto
http://www.htmlgoodies.com/beyond/jsprint.html
Si llamas a print(), te saldrá el cuadro de impresión, donde seleccionar impresora, etc.
Mira, hice unas modificaciones, y por lo menos ya aparece la ventana de propiedades de impresión, pero no me imprime lo que hay en el div si no que me imprime el link (Imprimir) ¿Sabes qué me puede faltar? Compara este script con el que te mostré anteriormente haber si me no puse algo necesario. GRACIAS
<script language="javascript">
  function Imprimir_Contenido(nombre)
  {
  var ficha = document.getElementById(nombre);
  var Ventana_Impresion = window.print(' ', 'popimpr');
  } 
</script>
<body>
<a href="javascript:window.print()('pr')" >Imprimir</a>
<div id="pr">Esto es una prueba de impresión</div>
</body>
Ten en cuenta que se imprime lo que le envías a la ventana... viendo tu cod.. en vez de popimpr no debeeria is más bien.. ¿ficha? que es el div en si?
Ok, Mil gracias, disculpa que pregunte que solicite otra aclaración, pero me podrías explicar bien esto que me dices y me explicas que es enviar a la ventana.
Gracias
Bueno te recomiendo alfo y es que entiendas un poco el código que escribes.. por que sino al pegar así no más.. vas a quedar loco por ue no vas a saber bien que estas haciendo..
Cuando te digo enviar.. es por que según tu funocion
<a href="javascript:window.print()('pr')" >Imprimir</a>
en windows.print() estas mandado vacio.. si vas imprimir pr.. deberias enviar el div para impreson
osea <a href="javascript:window.print('pr')" >Imprimir</a> ahora.. yo no he probado el printo.. pero si asi no te funciona.. entonces.. podria ser asi, analiza unpoco el codigo.. y veras a lo qie me refiero
<a href="Imprimir_Contenido()" >Imprimir</a>
<script language="javascript">
  function Imprimir_Contenido()
  {
  var ficha = document.getElementById('pr');
  var Ventana_Impresion = window.print(' ', ficha);
  } 
</script>
Apliqué tu sugerencia pero sigue imprimiento el texto enlace. Y no lo que tengo en el Div. Si de pronto pudieras ser más específico. Muchas gracias
Intenta esto
  var Ventana_Impresion = window.print(document.getElementById('pr'));
Ok, lo intentaré
No olvies cerrar y valorar...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas