He estado buscando formas de que jQuery escriba automáticamente requerido usando la validación html5 para todos mis campos de entrada, pero tengo problemas para decirle dónde escribirlo.
Quiero tomar esto
<input type="text" name="first_name" value="" id="freeform_first_name"
maxlength="150">
y haga que sea añadir automáticamente requerida antes de la etiqueta de cierre
<input type="text" name="first_name" value="" id="freeform_first_name"
maxlength="150" required>
Pensé que podría hacer algo en la línea de
$("input").attr("required", "true");
Pero no funciona. Cualquier ayuda es muy apreciada.
javascript
jquery
validation
Miura-shi
fuente
fuente
$(function(){....});
Respuestas:
DEMO FIDDLE
fuente
TypeError: element.prop is not a function
error<form></form>
etiquetas en tu jsFiddle.prop('required',true)
a la entrada antes de llamarla.css("display", "block")
.Puede hacerlo usando attr, el error que cometió es poner las verdaderas comillas internas. en lugar de eso intente esto:
fuente
required
es un atributo booleano y solo debe omitirse (para "falso"), o tener el mismo valor que su nombre (es decir,"required"
para "verdadero"). En realidad es mejor usarlo.prop()
.prop()
no funciona allí como lo hace en los navegadores modernos. Sigue siendo mejor usar$(ele).attr("required", true)
yfalse
quitar.He descubierto que las siguientes implementaciones son efectivas:
Estos comandos (attr, removeAttr, prop) se comportan de manera diferente según la versión de JQuery que esté utilizando. Consulte la documentación aquí: https://api.jquery.com/attr/
fuente
Utilizando el
.attr
métodoUtilizando
.prop
Leer más desde aquí
fuente
Descubrí que jquery 1.11.1 no hace esto de manera confiable.
Yo solía
$('#estimate').attr('required', true)
y$('#estimate').removeAttr('required')
.La eliminación
required
no fue confiable. Algunas veces dejaría elrequired
atributo sin valor. Comorequired
es un atributo booleano, el navegador ve su mera presencia, sin valortrue
.Este error era intermitente y me cansé de jugar con él. Cambiado a
document.getElementById("estimate").required = true
ydocument.getElementById("estimate").required = false
.fuente
removeAttr
no me funciona Entonces uso tu solución y funciona bien. ¡Gracias!No debe encerrar verdadero con comillas dobles "" debería ser como
También puedes usar utilería
En lugar de cierto , puede intentarlo. Como
fuente