como puedo pasar el valor a un formulario desde un popup mediante un link, que no sea como el ejemplo de las faqs, existe alguna manera.
alguien me podria ayudar
| ||||
Hola jUaN_ No se como será el ejemplo de las FAQs, pero puedes hacerlo así: <a href="#" onclick="opener.forms['nombreFormulario']['nombreControl'].value='algo';return false">Enviar</a> Espero que te sirva. Saludos, |
| |||
efectivamente sale ese error ... justamente estoy buscando lo mismo pero al momento de hacer clic en el popup como cierro esa ventana y pasar ese valor en un cuadro de texto? saludos
__________________ rocita |
| |||
este es mi sample: <form name="form" method="POST" action="<?=$PHP_SELF?>"> <input name="col" type="text" id="col" size="4" maxlength="7"> <a href="javascript:colores_window('colores.php')">Se lect color</a> </form> en mi popup <a href="#" onclick="opener.forms['form']['col'].value='100';return false">COD 001</a> :D
__________________ rocita |
| ||||
Hola a todos: Creo que los formularios "cuelgan" del objeto document, así que pienso que sería mejor usar: opener.document.forms['nombreFormulario']['nombreControl'].value='algo'... Saludos
__________________ Por favor: No hagan preguntas de temas de foros en mensajes privados... no las respondo |
| ||||
Cita: Javi: Me parece que te "copiaste"... ...
Iniciado por JavierB Hola rocita Creo que esto si que os servirá a tí y a jUaN_: onclick="opener.document.forms['form']['col'].value='100';return false" Crucemos los dedos. Saludos, <offtopic>La "muesca" me temo que la voy a poner en mi winchester</offtopic> Saludos P.D: Mientras respondía ví que ya te habias enterado...
__________________ Por favor: No hagan preguntas de temas de foros en mensajes privados... no las respondo |
| |||
<a href="#" onclick="opener.document.forms['form']['col'].value='100'; window.close(); return false"> ahora si ... y me cierra mi ventana :D gracias caricatos y javierB
__________________ rocita |
| ||||
muestro un ejemplo del mismo el formulario seria este 3.htm <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Documento sin título</title> <script language="JavaScript"> function abrirVentana() { open("2.htm","miVentana", "toolbar=no,location=no,scrollbars=yes,directories =no,status=no,menubar=no,resizable=no,width=650,he ight=600"); } </script> </head> <body> <form name="frm" action="ingresoremedy1.asp" method="POST" onsubmit="document.forms[0].enviar.value='Generando Incidencia';document.forms[0].enviar.disabled=true;"> <table> <tr> <td width="27%" height="20"> Centro de costos</td> <td width="73%" height="20"> <input name="CECO" type="text" size="50" autocomplete="off"> <a href="#" onclick="abrirVentana()">Buscar</a> </td> </table> </form> </body> </html> y el popup como un emplo este 2.htm <a href="#" onclick="opener.document.forms['frm']['ceco'].value='100'; window.close(); return false">hola</a> donde si hago clic en el link me tira error
__________________ <% Viru %> |
| |||
usu este JS Juan function colores_window (pagina) { var opciones="toolbar=no,location=no,directories=no,st atus=no,menubar=no,scrollbars=no,resizable=yes,wid th=550,height=590,top=10,left=10"; window.open(pagina,"",opciones); }
__________________ rocita |
| |||
se me presento otro problema .... Ocurre que estoy desarrollando un carrito de compras tengo un cuadro de texto en el cual tengo colores uso un popup para cargar los colores que son una lista de numero inicialmente me funciona perfectamente. Añado a la cesta y todo funcioan bien a la primera pero cuando voy a otra seccion y quiero volver a añadir la lista de colores el JS ya no me funciona tengo el mismo problema para validar cantidades en mi carrito de compras el JavaScript solo me funciona a la primera. donde creen que esta el ERROR ?
__________________ rocita |
| |||
uso un archivo popup.js el script es : function colores_window (pagina) { var opciones="toolbar=no,location=no,directories=no,st atus=no,menubar=no,scrollbars=no,resizable=yes,wid th=550,height=590,top=10,left=10"; window.open(pagina,"",opciones); } abro en un popup un archivo colores.php Código HTML: <TR> <TD height="25" align="center" valign="top"><b><font size="2" face="Courier New, Courier, mono"> <a href="#" onclick="opener.document.forms['form']['col'].value='001'; window.close(); return false">COD 001</a></font></b></TD> <TD valign="top"> <div align="center"><b><font size="2" face="Courier New, Courier, mono"> <a href="#" onclick="opener.document.forms['form']['col'].value='002'; window.close(); return false">COD 002</a></font></b></div></TD> <TD valign="top"> <div align="center"><b><font size="2" face="Courier New, Courier, mono"> <a href="#" onclick="opener.document.forms['form']['col'].value='003'; window.close(); return false">COD 003</a></font></b></div></TD> <TD valign="top"> <div align="center"><b><font size="2" face="Courier New, Courier, mono"> <a href="#" onclick="opener.document.forms['form']['col'].value='004'; window.close(); return false">COD 004</a></font></b></div></TD> <TD valign="top"> <div align="center"><b><font size="2" face="Courier New, Courier, mono"> <a href="#" onclick="opener.document.forms['form']['col'].value='005'; window.close(); return false">COD 005</a></font></b></div></TD> </TR> <TR> me_amp01.php me_amp02.php me_amp03.php me_amp04.php me_amp05.php me_amp06.php me_amp07.php . . . . me_amp60.php donde tengo varios productos en los cuales voy adicionando mi carrito de compras, en todos esos archivos uso este codigo solo cambiando el valor de los ID y PRECIO Código PHP:
__________________ rocita |
| ||||
Asi a primera vista ,no veo por ninguna parte 'opener.form.frm' ademas 'frm' no es ningun campo del formulario que muestras. Podrias abreviar: opener.document.forms['form']['col'].value por opener.document.form.col.value No tengo muy claro desde donde abres cada una de esas paginas, y de si incluyes en ellas el script ,pero si las abres desde la pagina principal y no incluyes en ellas el script, esta orden: javascript:colores_window('colores.php') deberia ser: javascript:opener.colores_window('colores.php') Si no las abres desde la pagina principal, y tampoco incluyes en ellas el script , y si no me equivoco ,deberias dar un nombre a la ventana principal, al comienzo del script: window.name='principal' y luego la instruccion: javascript:principal.colores_window('colores.php') Voy a hecharle otra ojeada a ver si encuentro algo mas. Última edición por programeitor; 09/04/2005 a las 07:02 |
| |||
Hola; La pregunta esta buena, pero, como lo tienen solamente funciona en Explorer, pero en mozilla, opera, firefox, el acceso a los elementos del form o al documento no toman en cuenta el nombre de los elementos. Explorer, internamente sabe donde ir, pero en los otros navegadores, simplemente no saben como??. La solución es emplear la función "getElementById" esta es la manera de acceder a los diferentes elementos en el objeto document. Nos vemos. |
| |||
hice esos cambios que me sugeriste pero sigo con el mismo problema programeitor en mis paginas me_amp01.php me_amp02.php me_amp03.php me_amp04.php me_amp05.php me_amp06.php me_amp07.php . . . . me_amp60.php incluyo a mi JS de la siguietne manera <LINK href="main.css" type=text/css rel=STYLESHEET> </HEAD> <SCRIPT language=javascript src="../../popup.js"> </SCRIPT> ..... </html> la ayuda proporcionada por JavierB y caricatos funciona perfectamente <a href="#" onclick="opener.document.forms['form']['col'].value='003'; window.close(); return false">COD 003</a> como tu dices de igual manera <a href="#" onclick="opener.document.form.col.value='001'; window.close(); return false">COD 001</a> pero si quiero volver a acceder al mismo link colores que se abre en un popup al volver hacer clic en uno de esos links ejemplo Código HTML: <a href="#" onclick="opener.document.form.col.value='001'; window.close(); return false">COD 001</a> Cita: opener.forms.frm es nulo o no es un objeto
__________________ rocita |
| |||
gracias por la ayuda nostromo_ la verdad no hice la prueba con otros browsers pero yo solo uso el Internet Explorer, como empleo tu solución con "getElementById" ??? haber sime das una ayuda :)
__________________ rocita Última edición por rocita; 09/04/2005 a las 12:03 |
| ||||
Cita: Hola nostromo_
Iniciado por nostromo_ ... como lo tienen solamente funciona en Explorer, pero en mozilla, opera, firefox, el acceso a los elementos del form o al documento no toman en cuenta el nombre de los elementos. por supuesto que toman el nombre esos navegadores ¿de dónde sacas que no lo hacen? |
| ||||
. Acabo de descargar Firefox y tambien funciona, Bueno nostromo, supongo que te habras confundido ,no hay problema ,de todos modos gracias, por ponerme en duda ,asi me he descargado tambien el firefox para hacer pruebas ,saludos. Rosita Bolivianita ,como te comente antes, en alguna parte tienes 'opener.document.form.frm' o 'opener.document.forms['form']['frm'], sino no te daria éste error. ¿tienes algun campo que se llame 'frm'? ,porque si no lo tienes, y le haces una llamada, te va a seguir dando el error. Te recomiendo que revises el codigo (puedes usar el block de notas o lo que te parezca para buscar en las paginas 'frm'. Otra cosa, no se si sera parte del problema ,pero pon las comillas en la llamada al css y al script: <link rel="stylesheet" type="text/css" href="archivo.css"> <script type="text/javascript" src="acchivo.js"></script> Otra cosita mas: <a href="#" onclick="opener.document.form.col.value='001'; window.close(); return false">COD 001</a> este link, cambia el valor de opener.document.form.col y te cierra la ventana, pero no abre ningun popup. . Última edición por programeitor; 09/04/2005 a las 13:31 |
| |||
Hola; En referencia de mis comentarios, en las versiones anteriores esto no resultaba, ya que el DOM los toma distinto según la versión del navegador. Aquí les dejo otra alternativa, a mi gusto la mejor. Ventana padre html, maestro1.html Código HTML: <html> <head> <title></title> <script> var parametro; function popup() { parametro = window.open("copia1.html","","width=400,height=300"); parametro.document.getElementById('1').value = "Pasar Valor al Padre :"; } </script> </head> <body> <form name=formul> <input type=button value="Valor Tabla" onclick=popup();> <br> Parametros de la Ventana 1 <input type=text size=20 id=resul_1 readonly> </form> </body> </html> copia1.html Código HTML: <html> <head> <title>Prueba 1</title> <style> body {font-family:verdana;font-size:12px;} .texto{font-family:verdna;font-size:12px;} </style> <script> function enviar(obj) { with(document) { var dat = getElementById(obj).value; with(opener.document) { getElementById('resul_1').value = dat; } //--- cerrar ventana actual--- window.close(); } } function leer(obj) { with(document) { var n = getElementById(obj).value; var m = getElementById('1').value; getElementById('aqui').value = m + " " + n; } } function vacio() { with(document) { var m = getElementById('1').value; getElementById('aqui').value = m; } } </script> </head> <body > <table border=1 cellspacing=0 cellpadding=0 width=100 bgcolor=silver> <tr onmouseover=leer('d1'); onmouseout=vacio();> <td id=d1 value=men_1 onclick=enviar('d1');>Dato_1</td> </tr> <tr onmouseover=leer('d2'); onmouseout=vacio();> <td id=d2 value=men_2 onclick=enviar('d2');>Dato_2</td> </tr> <tr onmouseover=leer('d3'); onmouseout=vacio();> <td id=d3 value=men_3 onclick=enviar('d3');>Dato_3</td> </tr> <tr onmouseover=leer('d4'); onmouseout=vacio();> <td id=d4 value=men_4 onclick=enviar('d4');>Dato_4</td> </tr> </table> <input type=text id=aqui size=40 readonly> <input type=hidden id=1 size=40 readonly> </body> </html> Última edición por nostromo_; 10/04/2005 a las 19:30 |
| |||
Hola, yo suelo usar el Firefox y para cargar una select desde un pop-up he puesto esta funcion javascript: <script> function AddDireccion(valor) { var n = opener.document.forms.cliente.address.length; var nuevadir=new Option(valor,n + 1,true,true); opener.document.forms.cliente.address.options[n]=nuevadir; window.close(); } </script> Como digo, con Firefox funciona pero lo acabo de probar con Explorer y falla en la linea donde se carga la select de la ventana principal y no hace nada: (opener.document.forms.cliente.address.options[n]=nuevadir;). Alguien me puede ayudar? |
| |||
Alo >> programeitor pues como dije en mi anterior post si hago correr mi ejemplo funciona perfectamente asi que no hay ningún problema en una primera llamada al popup, el problema esta cuando ejecuto el segundo. estoy usando un carrito de compras y si quiero selecionar colores para los diferentes productos que dispongo tengo que llamar nuevamente al popup pero en la segunda me sale el error : opener.forms.frm es nulo o no es un objeto :(
__________________ rocita Última edición por rocita; 11/04/2005 a las 11:32 |