html - tutorial - plantillas contact form 7
Cómo desactivar la casilla de verificación por defecto siempre (6)
Bueno, supongo que puedes usar checked = "false". Esa es la forma html de dejar una casilla de verificación sin marcar. Puede consultar http://www.w3schools.com/jsref/dom_obj_checkbox.asp .
Tengo 2 casillas de verificación dentro de un formulario y ambas casillas de verificación fueron envueltas dentro de un form
.
Para uno de form
, he agregado el atributo autocomplete="off"
.
Debajo está el fragmento de 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></head>
<body>
<form name="chkBoxForm" >
<div>
<input type="checkbox" value="100" name="product"/>My Checkbox1
</div>
</form>
<form name="chkBoxForm" autocomplete="off">
<div>
<input type="checkbox" value="200" name="product"/>My Checkbox2
</div>
</form>
</body>
</html>
Ahora mi problema aquí si comprobamos esas casillas manualmente y si presionamos F5 , entonces la casilla de verificación con el atributo autocomplete="off"
se desmarcó. Pero la casilla de verificación que no tiene ese atributo permanece marcada. Esto sucede en FireFox 22.
Este comportamiento varía de un navegador a un navegador.
En IE, ambas casillas de verificación permanecen marcadas y en Chrome, las casillas de verificación no se marcaron.
Pero cuando presiono enter en la barra de direcciones, se desactiva en todos los navegadores.
¿Puede alguien decirme cómo tener esas casillas de verificación sin marcar siempre que presione F5 ?
Soy consciente de que esto se puede manejar a través de Javascript.
¿Hay alguna otra manera html de manejar esto?
Este es un comportamiento específico del navegador y es una forma de hacer que llenar formularios sea más conveniente para los usuarios (como volver a cargar la página cuando se ha encontrado un error y no perder lo que acaban de escribir). Por lo tanto, no hay una manera segura de desactivar esto en todos los navegadores, salvo la configuración de los valores predeterminados en la carga de la página mediante javascript.
Firefox parece desactivar esta característica cuando especificas el encabezado:
Cache-Control: no-store
Ver esta pregunta
No, no hay forma en HTML simple. Javascript podría ser su única solución en este momento ..
Pasa por todas las casillas de verificación en javascript y configúralas para desmarcarlas:
var checkboxes = document.getElementsByTagName(''input'');
for (var i=0; i<checkboxes.length; i++) {
if (checkboxes[i].type == ''checkbox'') {
checkboxes[i].checked = false;
}
}
envuélvelo en un oyente de carga y debería estar bien, entonces :)
Si tiene una casilla de verificación con un id checkbox_id. Puede establecer su estado con JS con prop(''checked'', false)
o prop(''checked'', true)
$(''#checkbox_id'').prop(''checked'', false);
Una solución rápida que me vino a la mente:
document.getElementById ("markitem"). checked = false;jQuery
$(''input[type=checkbox]'').removeAttr(''checked'');
O
<!-- checked -->
<input type=''checkbox'' name=''foo'' value=''bar'' checked=''''/>
<!-- unchecked -->
<input type=''checkbox'' class=''inputUncheck'' name=''foo'' value=''bar'' checked=''''/>
<input type=''checkbox'' class=''inputUncheck'' name=''foo'' value=''bar''/>
+
$(''input.inputUncheck'').removeAttr(''checked'');