Verificar que se haya seleccionado minimo un checkbox

03/01/2006 - 23:59 por bonsweet | Informe spam
Hola!

Saludos a tod@as!

Quisiera saber de que manera puedo validar que al menos un checkbox (de
una lista grande de checkbox) se haya seleccionado al dar click a un boton

Gracias!

Preguntas similare

Leer las respuestas

#1 Hero
04/01/2006 - 00:21 | Informe spam
Esmeralda,

Lo que hago yo es una manera muy facil, el tema es el siguiente. PRIMERO:
debes hacer que los CHECK sean autonumerico en su nombre, de manera tal que
sea facil el rescate del valor al momento de submitir la pagina. SEGUNDO:
debes agregar al final del formulario un objeto hidden con el total de los
CHECK dibujados en tiempo de ejecucion. TERCERO: al inicio de la pagina,
cuando se presiona un boton que gatilla la accion "grabar" debes hacer lo
siguiente para recuperar los valores.

IF Accion = "grabar" Then

'-- Recorre desde 1 hasta la cantidad de elemento dibujados en tiempo de
ejecucion '
For ItemDoc = 1 to Cantidad_Registros
CicloSeleccion = Request("Documento_" & ItemDoc)
IF trim(CicloSeleccion) <> "" Then
'-- El CHECK ha sido SELECCIONADO '
End IF
Next

End IF



'-- Para dibujar lo debes hacer de la siguiente manera '
For ItemX = 1 to 20
%>
<input type="checkbox" id="Documento_<%=ItemX %>" value="VALOR QUE
DESEAS">
<%
Next


Espero te sirva... suerte...

Hero.

"Esmeralda" escribió en el mensaje
news:
Hola!

Saludos a !

Quisiera saber de que manera puedo validar que al menos un checkbox (de
una lista grande de checkbox) se haya seleccionado al dar click a un boton

Gracias!

Respuesta Responder a este mensaje
#2 Matías Iacono
04/01/2006 - 19:28 | Informe spam
Basado en el mismo ejemplo, puedes hacerlo con menos lineas.

Basicamente se trata de recorrer toda la lista de objetos que se envian al
servidor, en el caso de los CHKs puedes hacer como te comenta Hero, con una
variante.

Primero, crea los chks:

<input type=checkbox name="CHK_<%=Autonumerico%>" >

Luego, solo tienes que verificar la coleccion de controles enviados por el
form:

for each Elemento in request.form
if instr(Elemento,"CHK_") then
'Hay uno seleccionado
else
'Aun no
end if
next

Recuerda que solo son enviados los controles que han sido seleccionados o
contienen datos.

En este caso, se recorre cada uno de estos nombres y se verifica si existe
entre ellos la palabra CHK_, en el caso que exista solo uno, puedes hacer un
exit for y con una bandera decir que por lo menos uno fue seleccionado.

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net
DCE3 v.2003 - DCE2 v.2005
Coordinador de evento Comunidad MSDN Bolivia
"Hero" escribió en el mensaje
news:%23$
Esmeralda,

Lo que hago yo es una manera muy facil, el tema es el siguiente. PRIMERO:
debes hacer que los CHECK sean autonumerico en su nombre, de manera tal
que
sea facil el rescate del valor al momento de submitir la pagina. SEGUNDO:
debes agregar al final del formulario un objeto hidden con el total de los
CHECK dibujados en tiempo de ejecucion. TERCERO: al inicio de la pagina,
cuando se presiona un boton que gatilla la accion "grabar" debes hacer lo
siguiente para recuperar los valores.

IF Accion = "grabar" Then

'-- Recorre desde 1 hasta la cantidad de elemento dibujados en tiempo
de
ejecucion '
For ItemDoc = 1 to Cantidad_Registros
CicloSeleccion = Request("Documento_" & ItemDoc)
IF trim(CicloSeleccion) <> "" Then
'-- El CHECK ha sido SELECCIONADO '
End IF
Next

End IF



'-- Para dibujar lo debes hacer de la siguiente manera '
For ItemX = 1 to 20
%>
<input type="checkbox" id="Documento_<%=ItemX %>" value="VALOR QUE
DESEAS">
<%
Next


Espero te sirva... suerte...

Hero.

"Esmeralda" escribió en el mensaje
news:
Hola!

Saludos a !

Quisiera saber de que manera puedo validar que al menos un checkbox (de
una lista grande de checkbox) se haya seleccionado al dar click a un
boton

Gracias!





email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida