data type not recognised in firefox (?)

Discussion in 'JavaScript' started by cathy1, Sep 24, 2006.

  1. #1
    at least, i think that is the problem! The following code works fine in IE but not in Firefox - having messed around with some alerts to try and locate the problem I sometimes get it to return "addRemove" as NaN in Firefox. Any help much appreciated!

    JAVASCRIPT

    currentNumber = 0;

    function displayTables(tableString){
    var table = tableString.options[tableString.selectedIndex].value;
    var tableNumber = parseInt(table);
    var addRemove = tableNumber - currentNumber;

    if (addRemove <= 0){
    removeTables(addRemove,tableNumber);
    }
    else{
    addTables(currentNumber,tableNumber);
    }

    currentNumber = tableNumber;
    }

    function removeTables(addRemove,tableNumber){
    var deleteThisMany = 0 - addRemove;
    var startFrom = tableNumber + 1;
    var tablesToDelete = tableNumber + deleteThisMany;

    for (x = startFrom;x <= tablesToDelete;x++){
    var tableId = document.getElementById("table" + x);
    tableId.removeNode(true);
    }
    }

    function addTables(currentNumber,tableNumber){
    var startFrom = currentNumber + 1;

    for (x = startFrom;x <= tableNumber;x++){
    var newNode = document.createElement("DIV");
    testDiv.appendChild(newNode);
    newNode.id="table" + x;
    newNode.innerHTML = "htmlString" + x;
    }
    }

    HTML

    <select name="tables" size="1" onchange="displayTables(this)">
    <option value="0" selected="selected">Please Select</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    </select>
     
    cathy1, Sep 24, 2006 IP
  2. penagate

    penagate Guest

    Messages:
    277
    Likes Received:
    17
    Best Answers:
    0
    Trophy Points:
    0
    #2
    Hi!

    Please use the
     and [html] tags to preserve code formatting in future.
    
    I suggest you download and install [url=http://www.joehewitt.com/software/firebug/]Firebug[/url] for all Javascript development in Firefox. It includes a step-by-step debugger that you can use to pin-point tricky problems such as this.
    
    Regards
    - P
    Code (markup):
     
    penagate, Sep 27, 2006 IP
  3. cathy1

    cathy1 Peon

    Messages:
    2
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #3
    Thanks - Firebug looks like a great tool. To answer my own question (incase it helps anyone) removeNode() works in IE only, so I had to change

    tableId.removeNode(true);
    Code (markup):
    to

    tableId.parentNode.removeChild(tableId);
    Code (markup):
    Cheers!
     
    cathy1, Sep 27, 2006 IP