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 functionerror<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
requiredes 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)yfalsequitar.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
.attrmétodoUtilizando
.propLeer 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
requiredno fue confiable. Algunas veces dejaría elrequiredatributo sin valor. Comorequiredes 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 = trueydocument.getElementById("estimate").required = false.fuente
removeAttrno 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