Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/11/2012, 18:24
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Input type Button con diferentes target

Primero, la sintáxis está mal,
\'Consultas/Excel_consulta_basica2.php\'
no tenés que escapar esas comillas simples ya que están defriniendo el valor de una propiedad.
Luego, en tu form no veo más campos que los buttons, porque no hacés links directamente, para que algo tan rebuscado.
Aún asi, vos mismo propones la solución (aunque sería más práctico crear una función), asi como ponés
this.form.action
podrías usar
this.form.target

Ejemplo
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6. </head>
  7. <form action="" method="post" name="form1" id="form1" target="xxx">
  8.  
  9. <input type="button" value="Consultar"onclick="this.form.action='Consultas/consulta_basica.php';this.form.target='_blank';this.form.submit();" />
  10.  
  11. <input type="button" value="Exportar a PDF" onclick="this.form.action='Consultas/PDF_consulta_basica.php';this.form.target='_self';this.form.submit();" />
  12.  
  13. <input type="button" value="Exportar a Excel" onclick="this.form.action='Consultas/Excel_consulta_basica2.php';this.form.target='_self';this.form.submit();" />
  14.  
  15. <input type="button" value="Consultar / Ingles" onclick="this.form.action='Consultas/consult.php';this.form.target='_blank';this.form.submit();" />
  16.  
  17. <input type="button" value="Exportar a PDF / Ingles" onclick="this.form.action='Consultas/PDF_basic_query.php';this.form.target='_blank';this.form.submit();" />
  18.  
  19. <input type="button" value="Exportar a Excel / Ingles" onclick="this.form.action='Consultas/Excel_basic_query.php';this.form.submit();" />
  20. </form>
  21.  
  22. <iframe name="xxx" id="xxx" src="about:blank"></iframe>
  23. </body>
  24. </html>
Por defecto el form tiene un target en un iframe,la última cargara en dicho iframe en tanto que las restantes redefinen el target y cargarán en la misma página o en una nueva.
Otro problema es que habitualmente el usuario tiene configurado el navegador para abrir nuevas ventanas en pestañas, por lo que ya necesitarías de window.open()

No sé, pero me parece que debe de haber otra forma más siple de hacer lo que necesitas

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Última edición por emprear; 28/11/2012 a las 13:37 Razón: ortografía