Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/08/2007, 15:07
Rodro
 
Fecha de Ingreso: junio-2007
Mensajes: 253
Antigüedad: 16 años, 11 meses
Puntos: 0
Pregunta problema con javascript en codigo vb.

Hola, hace tiempo estaba buscando un javascritp que me ayudara a controlar la cantidad de caracteres q' el usuario ingresa en un textbox con la propiedad multiline, y lo encontre en esta pagina, funciona bien al controlar la cantidad de caracteres y le permite ver al usuario un contador de los caracteres que faltan a medida que el va ingresando el texto requerido en el campo.

Aqui les dejo el codigo que me ayudo hacer esto:
<HTML>
...
<BODY >
...

<SCRIPT language="JavaScript" type="text/JavaScript">
function cambiar_num_caract(caracteres)
{
document.getElementById('caract1').innerHTML = caracteres;
caract_tserv=caracteres;
}

function count_caract(obj)
{
cant = obj.value.length;
rest = caract_tserv - cant;
document.getElementById('caract1').innerHTML = rest;
if(rest < 0)
{
obj.value = obj.value.substr(0, caract_tserv);
document.getElementById('caract1').innerHTML = 0;
}
}

</SCRIPT>
<form >
...
<P> Caracteres: <strong><span id="caract1">&nbsp;</span></strong> <input type="hidden" size="3" name="ok"></P>
<asp:textbox id="txtDescripcion" runat="server" Width="341px" Height="77px" TextMode="MultiLine"></asp:textbox>

...
</form>

<SCRIPT language="JavaScript" type="text/JavaScript">
// Actualizar desde un inicio el numero de caract max
cambiar_num_caract(200)
</SCRIPT>
</BODY>
</HTML>

Y en el load de la página:

private void Page_Load(object sender, System.EventArgs e)
{
if(!this.IsPostBack)
{
txtDescripcion.Attributes.Add("onKeyDown", "count_caract(this)");
txtDescripcion.Attributes.Add("onKeyUp", "count_caract(this)");
}
}

ya hasta ahi todo bien, lo unico que yo cambie para acoplar esto a mi necesidad fue esta parte del codigo que yo la pongo en vb:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

If Not Me.IsPostBack Then

txt_titulo.Attributes.Add("onKeyDown", "count_caract(this)")
txt_titulo.Attributes.Add("onKeyUp", "count_caract(this)")
End if
end Sub

y cada vez que en la pagina se hace un postback en la pagina se desaparece en contador que deberia mostrarse cuando el usuario ingresa los datos, no entiendo porque si alguien me puede ayudar.

Gracias!