Actualizar página ASP

27/04/2005 - 19:43 por JuanilloFox | Informe spam
Hola grupo,

Tengo un problema creado por la utilización de campos imagen en una página
ASP.

Por un lado tengo un formulario de entrada de datos con un campo para
introducir la ruta de un fichero imagen y otro para ver la imagen. Al
principio he pensado en utilizar el control HTML File Field en dicho
formulario, pero no se como controlar los eventos para que me actualizara el
campo con el fichero elegido (a menos que ponga un botón actualizar con lo
que se realiza doble trabajo a parte de ocupar mucho espacio de pantalla),
así que he optado por poner un botón, al lado del campo que recibirá la ruta
del fichero, para que me abra una ventana javascript con un formulario ASP y
allí utilizar el campo File Field para elegir un fichero jpg de la ruta del
cliente y actualizarlo en el servidor.
Hasta ahí todo bien.

El problema viene una vez cerrada la ventana javascrip con un botón html y
su correspondiente código onclic="javascript:window.close()", el formulario
devuelva a la página los parámetros correspondientes para rellenar el campo
que realiza la llamada.

->>Una solución adoptada es el uso de Session["ValoresRecogidos"] ="Ruta de
acceso al fichero jpg"... en el formulario abierto mediante la ventana
javascrip, pero no se como realizar
un PostBack (o mecanismo de actualización de la página) desde dicha ventana
a la página que tiene que recibir la elección de dicha ruta escogida<<-

Si alguno puede darme alguna solución o aclararme como puedo realizarlo,
incluso de una forma distinta, se lo agradeceré
Un saludo

juanillofox@andujar.com

Preguntas similare

Leer las respuestas

#1 Matias Iacono
28/04/2005 - 01:07 | Informe spam
Bueno, aunque veo que estas trabajando en .Net, creo que el problema es mas
de fondo.

Si lo que quieres es subir un archivo al server, si o si, lo debes hacer por
medio de un campo FILE, y el formulario que subira el archivo debe CONTENER
este campo, o sea, si lo pones en otro formulario, la sola ruta no te
funcionara.

Ahora, al abrir una nueva ventana, esta pasa a ser hija de la ventana que la
abrio, por lo que, puedes hace referencia al padre mediante la clausula
opener, en la ventana hija, la cual hace referencia, justamente, al padre.

Entonces, podrias acceder a algun control que tengas en el padre de la
siguiente manera:

<script>
opener.document.NombreDelForm.NombreDelControl.value = "Alguna Valor";
</script>

Saludos,

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3

Profile: http://aspnet2.com/mvp.ashx?MatiasIacono
"JuanilloFox" escribió en el mensaje
news:
Hola grupo,

Tengo un problema creado por la utilización de campos imagen en una página
ASP.

Por un lado tengo un formulario de entrada de datos con un campo para
introducir la ruta de un fichero imagen y otro para ver la imagen. Al
principio he pensado en utilizar el control HTML File Field en dicho
formulario, pero no se como controlar los eventos para que me actualizara


el
campo con el fichero elegido (a menos que ponga un botón actualizar con lo
que se realiza doble trabajo a parte de ocupar mucho espacio de pantalla),
así que he optado por poner un botón, al lado del campo que recibirá la


ruta
del fichero, para que me abra una ventana javascript con un formulario ASP


y
allí utilizar el campo File Field para elegir un fichero jpg de la ruta


del
cliente y actualizarlo en el servidor.
Hasta ahí todo bien.

El problema viene una vez cerrada la ventana javascrip con un botón html y
su correspondiente código onclic="javascript:window.close()", el


formulario
devuelva a la página los parámetros correspondientes para rellenar el


campo
que realiza la llamada.

->>Una solución adoptada es el uso de Session["ValoresRecogidos"] ="Ruta


de
acceso al fichero jpg"... en el formulario abierto mediante la ventana
javascrip, pero no se como realizar
un PostBack (o mecanismo de actualización de la página) desde dicha


ventana
a la página que tiene que recibir la elección de dicha ruta escogida<<-

Si alguno puede darme alguna solución o aclararme como puedo realizarlo,
incluso de una forma distinta, se lo agradeceré
Un saludo





Respuesta Responder a este mensaje
#2 Ivan \(CLIPERNET.COM\)
28/04/2005 - 11:23 | Informe spam
Hola Matias!

Tengo una duda sobre:

<script>
opener.document.NombreDelForm.NombreDelControl.value = "Alguna Valor";
</script>


¿Funcionaria ese codigo con ASP normal o es solo para .NET? (no lo puedo
comprobar ahora mismo, no estoy en el trabajo :-D)


"Matias Iacono" escribió en el mensaje
news:
Bueno, aunque veo que estas trabajando en .Net, creo que el problema es
mas
de fondo.

Si lo que quieres es subir un archivo al server, si o si, lo debes hacer
por
medio de un campo FILE, y el formulario que subira el archivo debe
CONTENER
este campo, o sea, si lo pones en otro formulario, la sola ruta no te
funcionara.

Ahora, al abrir una nueva ventana, esta pasa a ser hija de la ventana que
la
abrio, por lo que, puedes hace referencia al padre mediante la clausula
opener, en la ventana hija, la cual hace referencia, justamente, al padre.

Entonces, podrias acceder a algun control que tengas en el padre de la
siguiente manera:

<script>
opener.document.NombreDelForm.NombreDelControl.value = "Alguna Valor";
</script>

Saludos,

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3

Profile: http://aspnet2.com/mvp.ashx?MatiasIacono
"JuanilloFox" escribió en el mensaje
news:
Hola grupo,

Tengo un problema creado por la utilización de campos imagen en una
página
ASP.

Por un lado tengo un formulario de entrada de datos con un campo para
introducir la ruta de un fichero imagen y otro para ver la imagen. Al
principio he pensado en utilizar el control HTML File Field en dicho
formulario, pero no se como controlar los eventos para que me actualizara


el
campo con el fichero elegido (a menos que ponga un botón actualizar con
lo
que se realiza doble trabajo a parte de ocupar mucho espacio de
pantalla),
así que he optado por poner un botón, al lado del campo que recibirá la


ruta
del fichero, para que me abra una ventana javascript con un formulario
ASP


y
allí utilizar el campo File Field para elegir un fichero jpg de la ruta


del
cliente y actualizarlo en el servidor.
Hasta ahí todo bien.

El problema viene una vez cerrada la ventana javascrip con un botón html
y
su correspondiente código onclic="javascript:window.close()", el


formulario
devuelva a la página los parámetros correspondientes para rellenar el


campo
que realiza la llamada.

->>Una solución adoptada es el uso de Session["ValoresRecogidos"] ="Ruta


de
acceso al fichero jpg"... en el formulario abierto mediante la ventana
javascrip, pero no se como realizar
un PostBack (o mecanismo de actualización de la página) desde dicha


ventana
a la página que tiene que recibir la elección de dicha ruta escogida<<-

Si alguno puede darme alguna solución o aclararme como puedo realizarlo,
incluso de una forma distinta, se lo agradeceré
Un saludo









Respuesta Responder a este mensaje
#3 JuanilloFox
28/04/2005 - 12:48 | Informe spam
Hola Matías,

En principio te comento que la "ventana padre" es una página ASP con C# es
decir que la contiene el explorador. Desde esta aparece un control html
"Imagebutton" (no runat=server) que dispara el evento
[OnClick="javascript:eligeImagen('RecuperaImagen.aspx')] esta rutina lanza
la ventana con la página ASP para recoger la imagen y guardarla en el
subdirectorio del servidor esto se realiza bien y obtengo la imagen (lo que
pasa que este control File Field pierde el valor una vez pulsado el botón
para subir la imagen, pero capturo antes el directorio/fichero.jpg en una
variable).

Si entiendes el párrafo anterior el problema es pasar ese valor a la página
padre (no ventana) para que actualice el campo del formulario que tiene que
albergar dicho valor.

Tu me comentas que realice lo siguiente en la ventana hijo:
<script>
opener.document.NombreDelForm.NombreDelControl.value = "Alguna Valor";
</script>



pero la anterior no es una ventana, sino una página ASP en el explorador.


Un saludo


Respuesta Responder a este mensaje
#4 Matias Iacono
28/04/2005 - 17:11 | Informe spam
En realidad, funciona en HTML, o sea, es javascript, por lo que, la
plataforma de desarrollo, ASP, ASP.net, PHP, JSP, etc., es indistinta.

Saludos,

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3

Profile: http://aspnet2.com/mvp.ashx?MatiasIacono
"Ivan (CLIPERNET.COM)" escribió en el mensaje
news:%
Hola Matias!

Tengo una duda sobre:

<script>
opener.document.NombreDelForm.NombreDelControl.value = "Alguna Valor";
</script>


¿Funcionaria ese codigo con ASP normal o es solo para .NET? (no lo puedo
comprobar ahora mismo, no estoy en el trabajo :-D)


"Matias Iacono" escribió en el mensaje
news:
> Bueno, aunque veo que estas trabajando en .Net, creo que el problema es
> mas
> de fondo.
>
> Si lo que quieres es subir un archivo al server, si o si, lo debes hacer
> por
> medio de un campo FILE, y el formulario que subira el archivo debe
> CONTENER
> este campo, o sea, si lo pones en otro formulario, la sola ruta no te
> funcionara.
>
> Ahora, al abrir una nueva ventana, esta pasa a ser hija de la ventana


que
> la
> abrio, por lo que, puedes hace referencia al padre mediante la clausula
> opener, en la ventana hija, la cual hace referencia, justamente, al


padre.
>
> Entonces, podrias acceder a algun control que tengas en el padre de la
> siguiente manera:
>
> <script>
> opener.document.NombreDelForm.NombreDelControl.value = "Alguna


Valor";
> </script>
>
> Saludos,
>
> Matías Iacono
> Microsoft MVP ASP/ASP.net - DCE3
>
> Profile: http://aspnet2.com/mvp.ashx?MatiasIacono
> "JuanilloFox" escribió en el mensaje
> news:
>> Hola grupo,
>>
>> Tengo un problema creado por la utilización de campos imagen en una
>> página
>> ASP.
>>
>> Por un lado tengo un formulario de entrada de datos con un campo para
>> introducir la ruta de un fichero imagen y otro para ver la imagen. Al
>> principio he pensado en utilizar el control HTML File Field en dicho
>> formulario, pero no se como controlar los eventos para que me


actualizara
> el
>> campo con el fichero elegido (a menos que ponga un botón actualizar con
>> lo
>> que se realiza doble trabajo a parte de ocupar mucho espacio de
>> pantalla),
>> así que he optado por poner un botón, al lado del campo que recibirá la
> ruta
>> del fichero, para que me abra una ventana javascript con un formulario
>> ASP
> y
>> allí utilizar el campo File Field para elegir un fichero jpg de la ruta
> del
>> cliente y actualizarlo en el servidor.
>> Hasta ahí todo bien.
>>
>> El problema viene una vez cerrada la ventana javascrip con un botón


html
>> y
>> su correspondiente código onclic="javascript:window.close()", el
> formulario
>> devuelva a la página los parámetros correspondientes para rellenar el
> campo
>> que realiza la llamada.
>>
>> ->>Una solución adoptada es el uso de Session["ValoresRecogidos"]


="Ruta
> de
>> acceso al fichero jpg"... en el formulario abierto mediante la ventana
>> javascrip, pero no se como realizar
>> un PostBack (o mecanismo de actualización de la página) desde dicha
> ventana
>> a la página que tiene que recibir la elección de dicha ruta escogida<<-
>>
>> Si alguno puede darme alguna solución o aclararme como puedo


realizarlo,
>> incluso de una forma distinta, se lo agradeceré
>> Un saludo
>>
>>
>>
>>
>>
>
>


Respuesta Responder a este mensaje
#5 Matias Iacono
28/04/2005 - 17:13 | Informe spam
Ok, en ese caso hay un problema de seguridad. Por motivos de seguridad, no
puedes actualizar un campo del tipo FILE, o sea, no puedes modificar el
contenido de este para que muestre una ruta especifica. Salvo que el usuario
elija un archivo.

Piensa que si se pudiera, tendrias la capacidad de seleccionar cualquier
archivo del cliente y subirlo al servidor sin que el se de cuenta.

Saludos,

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3

Profile: http://aspnet2.com/mvp.ashx?MatiasIacono
"JuanilloFox" escribió en el mensaje
news:O2Jmj$
Hola Matías,

En principio te comento que la "ventana padre" es una página ASP con C# es
decir que la contiene el explorador. Desde esta aparece un control html
"Imagebutton" (no runat=server) que dispara el evento
[OnClick="javascript:eligeImagen('RecuperaImagen.aspx')] esta rutina lanza
la ventana con la página ASP para recoger la imagen y guardarla en el
subdirectorio del servidor esto se realiza bien y obtengo la imagen (lo


que
pasa que este control File Field pierde el valor una vez pulsado el botón
para subir la imagen, pero capturo antes el directorio/fichero.jpg en una
variable).

Si entiendes el párrafo anterior el problema es pasar ese valor a la


página
padre (no ventana) para que actualice el campo del formulario que tiene


que
albergar dicho valor.

Tu me comentas que realice lo siguiente en la ventana hijo:
> <script>
> opener.document.NombreDelForm.NombreDelControl.value = "Alguna


Valor";
> </script>

pero la anterior no es una ventana, sino una página ASP en el explorador.


Un saludo




Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida