Foros del Web » Programando para Internet » ASPX (.net) »

Contar Palabras en TextBox Multiline con VBSCRIPT

Estas en el tema de Contar Palabras en TextBox Multiline con VBSCRIPT en el foro de ASPX (.net) en Foros del Web. Hola amigos si alguien me puede ayudar con esto por favor, tengo uno en vbscript pero cuando estoy en el formulario y deseo hacer un ...
  #1 (permalink)  
Antiguo 09/07/2008, 07:24
 
Fecha de Ingreso: septiembre-2007
Mensajes: 58
Antigüedad: 16 años, 7 meses
Puntos: 0
Exclamación Contar Palabras en TextBox Multiline con VBSCRIPT

Hola amigos si alguien me puede ayudar con esto por favor, tengo uno en vbscript pero cuando estoy en el formulario y deseo hacer un autopostback de un checkbox no hace nada, éste es el script que tengo si alguien ve algun error, me sale subrayado en rojo en for y en event

dentro del <head>

<script type="text/vbscript" for="txtpar1" event="OnKeyup" language="vbscript">
if len(document.Form1.txtpar1.value)<=500 then
document.Form1.Par1.value=len(document.Form1.txtpa r1.value)
else
document.Form1.txtpar1.value=mid(document.Form1.tx tpar1.value,1,500)
end if
</script>

el error que me sale es que 'for' no es un atributo de válido en el elemento 'script'

en el textbox tengo:

<asp:TextBox ID="txtPar1" runat="server" BackColor="LightGray" BorderColor="#404040"
BorderStyle="Solid" BorderWidth="1px" Font-Names="Arial" Font-Size="8pt" ForeColor="Black"
Height="79px" TextMode="MultiLine" Width="300px" MaxLength="500"></asp:TextBox><br />

y el textbox que me dice cuantos caracteres van:

<input maxlength="500" name="Par1" readonly="readonly" style="font-weight: bold;
font-size: 8pt; width: 30px; color: red; background-color: lavender" type="text" />

El cuenta bien y pone los caracteres con los espacios que van pero dentro del formulario tengo un checkbox que le dice al usuario si desea o no hacer una accion y depende de esto deshabilita un fileupload y habilita un boton pero no pasa nada si le doy check o no al checkbox.

por favor si alguien me puede ayudar.

Gracias.

Última edición por roly0476; 09/07/2008 a las 07:25 Razón: escribi mal script
  #2 (permalink)  
Antiguo 09/07/2008, 14:44
 
Fecha de Ingreso: septiembre-2007
Mensajes: 58
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Contar Palabras en TextBox Multiline con VBSCRIPT

Bueno estuve googleando y encontré una solución aquí les dejo el código completo.

No es igual al que encontre ya que son dos soluciones en una sola, espero le sirva a alguien.

No se olviden comentar si lo usan y si les fue útil.

saludos.


Codigo html: .aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Textbox2.aspx.vb" Inherits="Textbox2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title></title>
<script language="javascript" type="text/javascript">
function setMaxLength() {
var x = document.getElementsByTagName('textarea');
var counter = document.createElement('div');
counter.className = 'counter';
for (var i=0;i<x.length;i++) {
if (x[i].getAttribute('maxlength')) {
var counterClone = counter.cloneNode(true);
counterClone.relatedElement = x[i];
counterClone.innerHTML = '<span>0</span>/'+x[i].getAttribute('maxlength');
x[i].parentNode.insertBefore(counterClone,x[i].nextSibling);
x[i].relatedElement = counterClone.getElementsByTagName('span')[0];

x[i].onkeyup = x[i].onchange = checkMaxLength;
x[i].onkeyup();
}
}
}

function checkMaxLength() {
var maxLength = this.getAttribute('maxlength');
var currentLength = this.value.length;
if (currentLength > maxLength)
this.relatedElement.className = 'toomuch';
else
this.relatedElement.className = '';
this.relatedElement.firstChild.nodeValue = currentLength;
// not innerHTML
}
</script>
<script language="javascript" type="text/javascript">
function ValidarCaracteres(TextBox0,maxlength){

if (TextBox0.value.length > maxlength){
TextBox0.value = TextBox0.value.substring(0,maxlength);
alert("Debe ingresar hasta un maximo de "+maxlength+" caracteres");
}
}
</script>
<script language="javascript" type="text/javascript">
function ValidarCaracteres(TextBox1,maxlength){

if (TextBox1.value.length > maxlength){
TextBox1.value = TextBox1.value.substring(0,maxlength);
alert("Debe ingresar hasta un maximo de "+maxlength+" caracteres");
}
}
</script>
</head>
<body runat="server" id="body1">
<form id="form1" runat="server">

<p>
<asp:TextBox ID="TextBox0" runat="server"
Height="88px" TextMode="MultiLine" Width="269px"></asp:TextBox>
</p>
<p>
<asp:TextBox ID="TextBox1" runat="server" Height="88px" TextMode="MultiLine" Width="269px"></asp:TextBox>
</p>
</form>
</body>
</html>
__________________________________________________ _____________

Codigo interno .vb

Partial Class Textbox2
Inherits System.Web.UI.Page

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
TextBox0.Attributes.Add("onkeypress", " ValidarCaracteres(this, 10);")
TextBox0.Attributes.Add("onkeyup", " ValidarCaracteres(this, 10);")
TextBox1.Attributes.Add("onkeypress", " ValidarCaracteres(this, 10);")
TextBox1.Attributes.Add("onkeyup", " ValidarCaracteres(this, 10);")
End Sub
Protected Sub TextBox1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox0.Load
TextBox0.Attributes.Add("maxlength", "10")
body1.Attributes.Add("onload", "setMaxLength();")
End Sub
Protected Sub TextBox2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.Load
TextBox1.Attributes.Add("maxlength", "10")
body1.Attributes.Add("onload", "setMaxLength();")
End Sub
End Class
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 13:15.