una - ocultar columnas tabla html jquery
Seleccione y deshabilite cada campo de entrada dentro de un formulario, envuelto en una tabla en jquery (3)
Estoy deshabilitando un formulario basado en una casilla de verificación ...
Tengo problemas para agregar el atributo deshabilitado.
esto es lo que obtuve hasta ahora: HTML:
<table id="shipInfoTable">
<tr>
<td>Name:</td>
<td><input type="text" name="name" /></td>
</tr>
...
</table>
Selector de Javascript / manipulación de atributos (jquery):
$("#shipInfoTable tbody tr td input").each(function(index, item){
item.attr("disabled", true);
});
Error de Chrome Dev Console: Uncaught TypeError: Object #<an HTMLInputElement> has no method ''attr''
Cuando aviso el item
dentro de .each()
alerta [object HTMLInputElement]
No estoy seguro de cómo seleccionar el elemento de entrada correctamente. ¿Qué estoy haciendo mal?
....
$("#shipInfoTable tbody tr td input").each(function(){
$(this).attr("disabled", true);
});
La función no te dará un objeto jQuery. Debería ser:
$("#shipInfoTable input").each(function(index, item){
$(item).attr("disabled", true);
});
(Tenga en cuenta que también simplifiqué su selector, todavía funciona)
Si no está haciendo nada con cada elemento, esto funcionará también:
$("#shipInfoTable input").attr("disabled", true);
el problema es la falta de $ () en la función .each () ...
$("#shipInfoTable tbody tr td input").each(function(index, item){
$(item).attr("disabled", true);
});