Foros del Web » Programación para mayores de 30 ;) » .NET »

OnMouseOver

Estas en el tema de OnMouseOver en el foro de .NET en Foros del Web. Hola de nuevo; Parece que se me está atascando lo de hacer un control panel que aparezca cuando pasas por un control... A ver. He ...
  #1 (permalink)  
Antiguo 21/07/2004, 10:12
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
OnMouseOver

Hola de nuevo;

Parece que se me está atascando lo de hacer un control panel que aparezca cuando pasas por un control...

A ver. He encontrado en el foro un post donde utilizaban esto:

Image1.Attributes.Add("onmouseover", "javascript: funcion();")

¿Cómo puedo hacer que esa función de javascript me llame a su vez a una función que esté en el code behind?

A ver si me podéis ayudar, porque estoy un poco atascado.

Un saludo
__________________
Pide lo que quieras...y luego paga por ello
  #2 (permalink)  
Antiguo 21/07/2004, 12:18
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Hola luiscl....tienes que provocar un postback ya que el code behind correo del lado del server...supongamos que tienes el codebehind de tu image button..lo siguiente...

Private Sub ImageButton1_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImageButton1.Click
...
...
tu code...

...
End Sub

y deseas que cuando se haga un onmouseover se ejecute provocando un postback.. te podría quedar así en tu javascript...

Cita:
<html>
<HEAD>
<script language="javascript">
function AlgunNombre()
{
//mi codigo
__doPostBack('ImageButton1','');
}
</script>
</head>
<body>
...
...
<asp:ImageButton id="ImageButton1" runat="server"></asp:ImageButton></P>
y en el codebehind...

Cita:
ImageButton1.Attributes.Add("onmouseover", "AlgunNombre();")
Espero que sea lo que buscas...

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 21/07/2004, 17:09
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Hola RootK;

He probado lo que me has dicho, y algo hago mal, porque no funciona.

En el code behind he puesto

Button1.Attributes.Add("onmouseover", "funcion();")

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Image2.Visible = True
End Sub

la función de Javascript es símplemente esto:

function funcion(){
__doPostBack('Button1','');
}

Y no me funciona...¿qué es lo que me falta?

Un saludo.
__________________
Pide lo que quieras...y luego paga por ello
  #4 (permalink)  
Antiguo 22/07/2004, 16:55
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Hola otra vez.

RootK, no conseguí hacerlo funcionar anoche, así que al final cambié la táctica (antes de colgarme de una viga, jejeje).

Copié un comportamiento de Javascript que a partir de un hiperlink ocultaba o mostraba una capa html en función de si el ratón estaba sobre el hiperlink o no.

Dentro de la capa metí una tabla, y dentro de la tabla un webcontrol Panel. Ya dentro del panel metí los controles que me hacían falta.

De esta manera me evité que la función de javascript llamase a una funcion del code behind, sino que símplemente ocultaba o mostraba la capa que dentro tiene, aquí sí, los controles que sí puedo enlazar (espero) a la base de datos.

Tu forma es mucho más limpia, pero fui incapaz de hacerla funcionar...muchas gracias de todos modos, porque me hizo indagar más en el __dopostback que me llevó a la función de javascript.

Un saludo.
__________________
Pide lo que quieras...y luego paga por ello
  #5 (permalink)  
Antiguo 23/07/2004, 14:22
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Por un lado me da gusto que ya hayas resuelto tu problema, , pero trata de no usar tantos controles para hacer mas ligera la page. (aunque se me hace raro que no te haya funcionado del javascript... )

Salu2 friend...
  #6 (permalink)  
Antiguo 23/07/2004, 16:26
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Pues no sé...lo que te he posteado encima es exáctamente lo que ponía, y cuando situaba el ratón sobre el control, me ponía en la barra de estado "error en la página"

Sé que mis soluciones son un poco chapuceras, pero esto de ir aprendiendo sobre la marcha (estoy yo solo para diseño y programación), es lo que tiene: Que no hay lugar para lucimientos.

Oye, ya que estamos: Sabes cómo presentar en un datagrid los resultados de 2 en 2. Es decir, que en cada fila se presenten 2 registros...como si fuese un datagrid al lado de otro.

Es algo que intento lograr, y no hay manera. Sé que con datalist se puede, pero ahora ya no puedo ponerme a cambiar todo (por lo que te decía: Los dichosos plazos).

Bueno, que muchas gracias por tu ayuda.

Un saludo.
__________________
Pide lo que quieras...y luego paga por ello
  #7 (permalink)  
Antiguo 23/07/2004, 18:39
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Personalmente no he visto que se puede hacer eso en un datagrid... ya que para eso está el datalist... pero buscaré para ver si encuentro algo, aunque sinceramente lo dudo porque con un datagrid la forma de presentar los registros es muy diferente.

Salu2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:03.