Ok, this has been killing me all night, I mean I've been working on this code for atleast 8 hours now. What is the problem with this, argggg.
I am trying to update all <span id="column_[row index number]_[column index number]_[layout position number]"> to increment it by one up until the next id="row_[row index number]" tr element, The tr elements that it should be searching in has an id of tr_[row index number]_[column index number]_[layout position number] but for some god knows what reason, it gives me issues.  It's updating the same <span> tag 2x, and this changes it from the desired value to 1 more than it should be... There's only 1 <span> tag within the firstChild <td> element of each of the <tr> elements.  I just don't understand why it is setting it 2x for just 1 of them, and it seems that it's random or something.  argggg.
There's only 1 <span> element in the <td id="tdcolumn_[row index number]_[column index number]_[layout position number]> tag, but for some reason, it is calling the same  tag twice.  It should only call it once. arggg.  I don't understand why??
Here's my code someone please help me here...
// Reorder all columns, if any, in the other rows after this 1.
if (aRowId != 0 && lId.indexOf("tr_" + aRowId) == 0 && rowComplete != aRowId)
{
    var tempTr = lTable.childNodes[i].childNodes[p];
    while(tempTr.nodeType == 1 && tempTr.nextSibling != null)
    {
        var tempId = tempTr.getAttribute("id");
        if (!tempId) continue;
        if (tempId.indexOf("row_") == 0)
        {
            // All done this row, set it to completed!
            rowComplete = aRowId;
            break;
        }
        if (tempTr.hasChildNodes)
        {
            var doneChilds = false;
            // grab the id where tdcolumn_{aRowId}.indexOf = 0.
            for (fcTd = 0; fcTd<tempTr.childNodes.length; fcTd++)
            {
                if (tempTr.childNodes[fcTd].nodeName == '#text') continue;
                var tempfcId = tempTr.childNodes[fcTd].getAttribute("id");
                if (!tempfcId) continue;
                if (tempfcId.indexOf("tdcolumn_" + aRowId) != 0) continue;
                // looping through the children in the <td> element here.
                if (tempTr.childNodes[fcTd].hasChildNodes)
                {
                    for (x = tempTr.childNodes[fcTd].childNodes.length-1; x>0; x--)
                    {
                        if (tempTr.childNodes[fcTd].childNodes[x].nodeName == '#text') continue;
                        var tempSpanId = tempTr.childNodes[fcTd].childNodes[x].getAttribute("id");
                        if (!tempSpanId) continue;
                        if (tempSpanId.indexOf("column_") != 0) 
                            continue;
                        // alert(tempSpanId);
                        alert(tempTr.childNodes[fcTd].childNodes[x].nodeName);
                        var tSpanId = new Array();
                        tSpanId = tempSpanId.split("_");
                        if (currColumnId == 0)
                        {
                            currColumnId = parseInt(tSpanId[1]);
                            var incCol = currColumnId;  
                        }
                        incCol++;
                        // alert("currColumnId = " + currColumnId + "\n\ntSpanId[1] = " + tSpanId[1] + "\n\nincCol = " + incCol);
                        // Set the new Id's and Text, after which we can exit the for loop.
                        tempTr.childNodes[fcTd].childNodes[x].setAttribute("id", "column_" + incCol);
                        tempTr.childNodes[fcTd].childNodes[x].setAttribute("class", "dp_edit_column");
                        tempTr.childNodes[fcTd].childNodes[x].innerHTML = oColumnText + " " + incCol;
                        // tempTr.childNodes[fcTd].setAttribute("id", "tdcolumn_" + aRowId + "_" + (parseInt(tSpanId[1])+1) + "_" + tSpanId[3]);
                        doneChilds = true;
                        break;
                    }
                }
                else
                    continue;
                if (doneChilds == true)
                    continue;
            }
        }
        else
            continue;
        tempTr = tempTr.nextSibling;
    }
}
Please help me, Thank You :)