Encontrar clase padre e Identificación
-
03-10-2019 - |
Pregunta
Bueno, después de innumerables intentos no puedo conseguir este trabajo?
<script type="text/javascript">
$("td input").focusout(function() {
var column = $(this).parent('td').attr('class');
var row = $(this).parent('tr').attr('id');
$('#dat').HTML(row+" "+column);
});
</script>
y las miradas del HTML como este:
<tr class="numbers" id="1">
<td class="a" align="right">1</td>
<td class="b"><input class="input" type="text" value=""/></td>
<td class="c"><input class="input" type="text" value=""/></td>
<td class="d"><input class="input" type="text" value=""/></td>
<td class="e"><input class="input" type="text" value=""/></td>
<td class="f">0</td>
<td class="g"><input class="input" type="text" value=""/></td>
</tr>
me puede punto cualquiera a la dirección correcta en lo que podría estar mal?
Solución
Tenga en cuenta que debe estar en minúsculas
$('#dat').HTML(row+" "+column);
.html
y
$(this).parent('tr')
es nulo, la entrada no puede tener un padre TR
Como alternativa a esto, puede utilizar
Otros consejos
Trate:
$(this).closest('td').attr('class')
en el lugar adecuado en el código. Lo mismo para identificación.
Sus miradas código correcto en su mayor parte, acaba de arreglar estas cosas:
$('#dat').HTML(row+' ' +column);
A esto:
$('#dat').html(row + ' ' + column);
Y esto:
$(this).parent('tr').attr('id');
A esto:
$(this).parents('tr').attr('id');
Usted desea utilizar la función .parents()
en lugar de la .parent()
.
La razón, a partir de la documentación, mi resaltado.
Dado un objeto jQuery que representa un conjunto de elementos DOM, la .parent () método nos permite buscar a través de la los padres de estos elementos en el DOM árbol y construir un nuevo objeto jQuery de los elementos coincidentes. La .parents () y .parent () métodos son similar, excepto que el último sólo viaja a un solo nivel hasta el DOM árbol.