ASP.NET - setfocus

 
Vista:

setfocus

Publicado por Noreen (134 intervenciones) el 15/03/2004 15:36:53
hola, como yo puedo hacer que cuando yo corra la pagina en asp.net
ocurra un setfocus en el textbox1

yo hice esto en el page load de aspx.vb

' Dim strScript As String

' strScript = "document.forms[0].Textbox1.focus();"
' Page.RegisterStartupScript("ClientScript", strScript)

y esto

Dim strScript As String

'strScript = "<script>"
'strScript = strScript & "document.forms[0].Textbox1.focus();"
'strScript = strScript & "</script>"

'Page.RegisterStartupScript("ClientScript", strScript)

pero nada me funciono., alguien sabe
???
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 56
Bronce
Ha mantenido su posición en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

RE:setfocus

Publicado por Yamil Bracho (1136 intervenciones) el 15/03/2004 15:47:07
Registra el script en el evento Javascript OnLoad del Body del html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

usa esta funcion

Publicado por polx - peru (7 intervenciones) el 15/03/2004 21:09:24
PRUEBA ESTA FUNCION QUE A MI SI ME RESULTA:
Public Shared Sub SetControlFocus(ByVal ctrl As Control) 'obtener foco
Dim code As String = String.Format("<input type=hidden name=focusmemory value=""{0}""><script language='javascript'>" & _
"if (eval(document.getElementById(document.all.focusmemory.value)).disabled==false) document.getElementById(document.all.focusmemory.value).focus();</script>", ctrl.ClientID)
ctrl.Page.RegisterStartupScript("SetControlFocus", code)
End Sub

LUEGO LO LLAMAS EN LA MISMA PAGINA COMO:

SetControlFocus(TextBox1)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

no me funciono

Publicado por Noreen (134 intervenciones) el 16/03/2004 17:01:09
anadi la funcion( no en el code behind) en .aspx.vb

cuando lo corri
me salio este mensaje
Control 'TextBox1' of type 'TextBox' must be placed inside a form tag with runat=server.

elimine el textbox1 que le habia anadido del toolbox webforms y le anadi uno de html, pero este me dio error pues no lo reconocio, que puede ser

gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:no me funciono

Publicado por Roger (1 intervención) el 19/03/2004 23:50:36
Bueno creo que tienes que agregarle [runat="server"] al control texbox asi:
<asp:TexBox id="TexBox1" runat="server"></asp:TexBox>,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:no me funciono

Publicado por Noreen (134 intervenciones) el 26/03/2004 15:09:19
Si le añado el runat=server, me da error pues cuando lo voy a leer en el codigo
no lo reconoce como elemento de aspx, sino como parte de html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:no me funciono

Publicado por Roger (5 intervenciones) el 03/04/2004 00:26:52
Por que no escribes parte de tu codigo, sobre todo la parte de como agregas el control (osea la parte donde te da error).................
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:usa esta funcion

Publicado por Carlos (4 intervenciones) el 04/10/2005 16:04:17
El problema con tu función, en mi caso, es que el ";" de la línea en JavaScript, ASPX, lo interpreta como el término de la cadena, por lo que arroja el error de que la constante debe terminar con comillas. ¿Qué hiciste para evitar este error?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:setfocus

Publicado por Carlos (4 intervenciones) el 04/10/2005 16:13:20
Esta función la he modificado de una que han dado en el foro y he eliminado el error que me daba.

Public Sub SetFocusControl(ByVal ControlName As String)
' character 34 = "

Dim script As String = _
"<script language=" + Chr(34) + "javascript" + Chr(34) _
+ ">" + _
" var control = document.getElementById(" + Chr(34) + _
ControlName + Chr(34) + ");" + _
" if( control != null ){control.focus();}" + _
"<" + Chr(47) + "script>"

Page.RegisterStartupScript("Focus", script)
End Sub

Debes entregar el nombre del control al cual desear asignar el foco. Por ejemplo:

SetFocusControl("TextBox1")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

A mi me resulto esto

Publicado por principianteVB.NET (2 intervenciones) el 13/09/2006 04:04:58
Mira yo tenia el mismo problema, yo trabajabo en visual 6.0 y ahi tenemos el evento setfocus que nos permite tomar el valor o hacer alguna rutina cuando pierde el foco el campo.
Recien estoy programando en asp.net y hice esto para tomar el valor cuando pierde el foco, si tienes un texto, dentro de las propiedades del texto hay una propiedad que se llama AUTOPOSTBACK esa dejala en el valor TRUE despues le haces doble click al texto y vas a quedar en el funcion
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged ( suponiendo que el texto se llama TextBox1) ahi puedes programar tu rutina, ahora la logica de esta funcion no es la misma que el setfocus de VB 6.0 PERO pero por lo menos yo le di esa caracteristica , la logica es que entra a esta funcion cuando se cambia el valor que esta en el texto o sea si el texto por defecto viene en blanco si tu le pones un valor a este texto cuando salgas de el, vas a caer en esta rutina.
Mira si bien es cierto la logica es distinta pero se puede ocupar con la misma finalidad.

Ojala te sirva.

principianteVB.NET
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar