Foros del Web » Programando para Internet » Javascript »

Boton de borrar

Estas en el tema de Boton de borrar en el foro de Javascript en Foros del Web. Hola a todos les pido su ayuda para resolver esta situación tengo un formulario de checkbox y esta pensado para que solo al seleccionar alguno ...
  #1 (permalink)  
Antiguo 23/06/2011, 15:31
 
Fecha de Ingreso: julio-2010
Mensajes: 19
Antigüedad: 13 años, 9 meses
Puntos: 1
Boton de borrar

Hola a todos les pido su ayuda para resolver esta situación tengo un formulario de checkbox y esta pensado para que solo al seleccionar alguno se active el boton de enviar, si no esta seleccionado nada el boton esta desactivado y de esta forma evitar que me envien el formulario vacio, hasta aquí todo bien pero me pidieron agregarle el boton de borrar y logro que si se selecciona algun checkbox se activen los botones y si no se selecciona nada se desactiven el problema radica en que si se pulsa el boton de borrar no me deactiva los botones y de esta forma se puede enviar el formulario vacio, y en si me gustaria saber si alguno de ustedes puede ayudarme a que si se pulsa el boton borrar se inactive los botones les dejo el codigo que tengo de antemano agradesco la ayuda que me puedan brinbdar.

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<script type="text/javascript">
function enviar(){
document.form1.button.disabled = true;
document.form1.button2.disabled = true;
for (i=0;i<document.form1.elements.length;i++){
if(document.form1.elements[i].type == "checkbox"){
if(document.form1.elements[i].checked == 1 ){
document.form1.button.disabled = false;
document.form1.button2.disabled = false;
i=document.form1.elements.length+10;
}
}
}
}
function marcar(){
marca_1();
}
function marca_1(){
if(document.form1.chck1.checked){
document.form1.b1.disabled=false
document.form1.b1.style.backgroundColor='#FFFFFF'
document.form1.b1.value=a1
document.form1.b1.focus()
}
else{
document.form1.b1.disabled=true
document.form1.b1.style.backgroundColor='#D6D3CE'
a1=document.form1.b1.value
document.form1.b1.value=""
}
}
</script>
</head>

<body onload="marcar()">
<form id="form1" name="form1" method="get" action="">
<input name="campos[]" type="checkbox" id="checkbox" value="1" onchange="enviar();" />
campo 1<br />
<input name="campos[]" type="checkbox" id="checkbox2" value="2" onchange="enviar();" />
campo 2<br />
<input name="campos[]" type="checkbox" id="checkbox3" value="3" onchange="enviar();" />
campo 3<br />
<input name="campos[]" type="checkbox" id="checkbox4" value="4" onchange="enviar();" />
campo 4
<br />
<input type="checkbox" name="chck1" value="ON" onclick="marca_1()" />
<input style="background-color: #D6D3CE" type="text" name="b1" size="20" disabled="disabled" />
<br />
<input name="button" type="submit" disabled="disabled" id="button" value="Enviar" />
<label>
<input type="reset" name="button2" id="button2" value="borrar" disabled="disabled" />
</label>
</form>
</body>
</html>
  #2 (permalink)  
Antiguo 23/06/2011, 17:05
Avatar de intiweb  
Fecha de Ingreso: mayo-2009
Ubicación: Capital Federal
Mensajes: 363
Antigüedad: 14 años, 11 meses
Puntos: 5
Respuesta: Boton de borrar

hola, la idea es que crees una funcion que destilde todos los checkbox y que te vuelva a desactivar los botones.
para esto en ves de poner un boton reset pones un boton que llame a esta nueva funcion.
aca te paso el codigo como quedaria andando, me copie tu codigo y lo modifique para lograr lo que querias.
espero que te sirva.

tenias otro error si tildabas algun checkbox luego tildabas el checkbox del campo de texto y luego destildabas todos los checkbox destildando como ultimo al checkbox del campo de texto tampoco desabilitaba los botones y te quedaba todo vacio, esto es porque en la funcion donde habilitas y desabilitas el campo de texto te faltaba a lo ultimo llamar a la funcion enviar que es la que se ocupa de los botones.
bueno espero que esto te sirva XD.
saludos

aca te dejo el script andando a full !!
Código:
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<script type="text/javascript">
function enviar(){
document.form1.button.disabled = true;
document.form1.button2.disabled = true;
for (i=0;i<document.form1.elements.length;i++){
if(document.form1.elements[i].type == "checkbox"){
if(document.form1.elements[i].checked == 1 ){
document.form1.button.disabled = false;
document.form1.button2.disabled = false;
i=document.form1.elements.length+10;
}
}
}
}
function marcar(){
marca_1();
}
function marca_1(){
if(document.form1.chck1.checked){
document.form1.b1.disabled=false
document.form1.b1.style.backgroundColor='#FFFFFF'
document.form1.b1.value=a1
document.form1.b1.focus()
}
else{
document.form1.b1.disabled=true
document.form1.b1.style.backgroundColor='#D6D3CE'
a1=document.form1.b1.value
document.form1.b1.value=""
}
enviar();
}
function resetear(){
document.form1.checkbox.checked=false;
document.form1.checkbox2.checked=false;
document.form1.checkbox3.checked=false;
document.form1.checkbox4.checked=false;
document.form1.checkbox4.checked=false;
document.form1.b1.disabled=true;
document.form1.b1.style.backgroundColor='#D6D3CE';
a1=document.form1.b1.value;
document.form1.b1.value="";
document.form1.button.disabled = true;
document.form1.button2.disabled = true;
}
</script>
</head>

<body onload="marcar()">
<form id="form1" name="form1" method="get" action="">
<input name="campos[]" type="checkbox" id="checkbox" value="1" onchange="enviar();" />
campo 1<br />
<input name="campos[]" type="checkbox" id="checkbox2" value="2" onchange="enviar();" />
campo 2<br />
<input name="campos[]" type="checkbox" id="checkbox3" value="3" onchange="enviar();" />
campo 3<br />
<input name="campos[]" type="checkbox" id="checkbox4" value="4" onchange="enviar();" />
campo 4
<br />
<input type="checkbox" name="chck1" value="ON" onclick="marca_1()" />
<input style="background-color: #D6D3CE" type="text" name="b1" size="20" disabled="disabled" />
<br />
<input name="button" type="submit" disabled="disabled" id="button" value="Enviar" />
<label>
<input type="button" onclick="resetear()" name="button2" id="button2" value="borrar" disabled="disabled" />
</label>
</form>
</body>
</html>
si te fijas invente una nueva funcion llamada resetear que es llamada por el boton borrar.
__________________
un saludo..... . . .
  #3 (permalink)  
Antiguo 23/06/2011, 17:45
 
Fecha de Ingreso: julio-2010
Mensajes: 19
Antigüedad: 13 años, 9 meses
Puntos: 1
Respuesta: Boton de borrar

Hola intiweb, ya cheque los comentarios que tan amablemente me realisaste y ya vi en donde estan mis errores, gracias por toda la ayuda brindada.

Etiquetas: borrar, botones
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 05:01.