Estoy utilizando la delegación de eventos en mootools. Quiero saber el número de fila que se ha hecho clic. Mi solución se muestra en este jsfiddle: ¿hay una mejor manera de lo que estoy haciendo actualmente?Mootools obtiene el índice hijo de un elemento de su elemento primario
Mi enfoque fue comparar los elementos hasta que encontré la coincidencia. ¿Hay algún método de IndexOf que pueda usar?
(El siguiente es los datos de la jsFiddle para el futuro)
HTML:
<div id="Record_List">
<div class="Row">
<input type="submit" name="Row" value="Edit"/>
</div>
<div class="Row">
<input type="submit" name="Row" value="Edit"/>
</div>
</div>
Javascript:
window.addEvent(
'domready',
function()
{
$('Record_List').addEvent(
'click:relay(input)',
function(evt, target)
{
evt.stop();
var rowElem = target.getParent();
var rowNumber = -1;
$('Record_List').getChildren('div.Row').each(
function (el, num)
{
if (rowElem === el)
{
rowNumber = num;
}
});
// Find the position of the row and display it here:
alert('Row number: ' + rowNumber);
});
});