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

Evitar Intro

Estas en el tema de Evitar Intro en el foro de .NET en Foros del Web. Wenas, tengo una página en la que hay que rellenar ciertos, datos, y además tengo un botón para realizar la acción, pues lo que quiero ...
  #1 (permalink)  
Antiguo 14/02/2005, 06:19
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 6 meses
Puntos: 8
Evitar Intro

Wenas, tengo una página en la que hay que rellenar ciertos, datos, y además tengo un botón para realizar la acción, pues lo que quiero hacer es que cuando le den al intro dentro de algundo de los textbox, NO se ejecute el códgio del botón, ¿Alguién sabe como puedo hacerlo??

Un saludo
  #2 (permalink)  
Antiguo 14/02/2005, 09:08
 
Fecha de Ingreso: noviembre-2002
Mensajes: 249
Antigüedad: 21 años, 6 meses
Puntos: 0
Puedes hacer esto:

Controlas cuando se pulsa una tecla en el texBox y si es enter (keychar(13)), haces lo que quieras.


Private Sub TextBox_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox.KeyPress
Dim KeyAscii As Short = CShort(Asc(e.KeyChar))
If KeyAscii = 13 Then xxxx
End Sub
  #3 (permalink)  
Antiguo 14/02/2005, 09:21
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 3 meses
Puntos: 50
Cita:
tengo una página en la que hay que rellenar ciertos,
Me imagino que estás hablando de aspx (web app) verdad.??

Si es así, lo puedes hacer del lado del cliente (javascript)

En modo html pondrías:

Cita:
function blockEnter()
{
if (event.keyCode==13)
return false;
}
y en tu codebehind podría ser:

Cita:
TextBox1.Attributes.Add("onkeypress", "return blockEnter()")
Con ello cuando el usuario presione ENTER no haga nada.

Espero que te sirva,

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

Exentrit - Soluciones SharePoint & Net
  #4 (permalink)  
Antiguo 15/02/2005, 02:07
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 6 meses
Puntos: 8
Gracias rootk, es justamente lo que buscaba
  #5 (permalink)  
Antiguo 15/02/2005, 02:54
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 6 meses
Puntos: 8
Acabo de probar el código y no me funciona, tengo algo así

If not IsPostBack()
BloquearIntros()
end if

private sub BloquearIntros()
TextBox1.Attributes.Add("onkeypress", "return blockEnter()")
TextBox2.Attributes.Add("onkeypress", "return blockEnter()")
...
end sub

y el el aspx

<script>
function BlockEnter()
{
if (event.keypress==13)
{
return false;
}
}
</script>


pero aun así me sigue lanzando un submit
  #6 (permalink)  
Antiguo 15/02/2005, 09:07
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 3 meses
Puntos: 50
Cita:
pero aun así me sigue lanzando un submit
por lo que alcanzo a ver, estás llamando a la funcion pero recuerda que javascript es case sensitive...

Intenta cambiar ésto:

Cita:
extBox1.Attributes.Add("onkeypress", "return blockEnter()")
Por ésto:

Cita:
textBox1.Attributes.Add("onkeypress", "return BlockEnter()")
y en tu funcion... la propiedad es keyCode y tu estás colocando keypress

Quedaría así:

Cita:
function BlockEnter()
{
if (event.keyCode ==13)
{
return false;
}
}
Salu2
  #7 (permalink)  
Antiguo 15/02/2005, 11:28
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 6 meses
Puntos: 8
Gracias rootk, eres la caña, al final he puesto directamente en el codebehind el codigo javascript:
Textbox1.Attributes.Add("onkeypress", "javascript:if(event.keyCode==13){return false;}")
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 18:32.