2014-01-03 7 views
-2

У меня возникла проблема с созданным мной сайтом. Проблема в том, что когда я добавляю элементы в корзину, она создает таблицу. Но когда я меняю количество продуктов и добавляю их снова в корзину, он делает строку таблицы ниже существующей.таблица javascript продолжает повторяться

Это мой HTML и JS код, который я получил до сих пор:

Так что лучше всего я хочу, что когда элемент уже в таблице. Он заменяется на тот же элемент, но с новой суммой.

if (cat == "T") 
      { 
       //variable die worden aangemaakt voor de final bestel form 
       artikelbestelT= []; 
       prijsbestelT = []; 
       aantalbestelT =[]; 
       //hier worden alle value aangesproken door middel van een dynamische benaming met een for loop 
       for (teller = 0; teller< artikeltel.length; teller++) 
      { 

       var waardeelem = document.getElementById("selecties"+teller+""); 
       var waarde = waardeelem.options[waardeelem.selectedIndex].value; 
       // hier wordt totaal berekent voor in winkelmandje 
       totaal= prijstel[teller] * waarde; 
       //hier wordt totaal in een array gestopt voor het eindbedrag 
       eindbedragT[teller] = totaal; 
       // als er niks wordt ingevuld kwa waarde dus 0 producten wordt dit stuk over geslagen 
       if (waarde > 0) 
       { 
        //anders wordt er een niewe array gemaakt met de daadwerkelijk bestelde producten 
        artikelbestelT.push(artikeltel[teller]) ; 
        prijsbestelT.push(prijstel[teller]); 
        aantalbestelT.push(waarde); 
        //hier wordt een tabel(winkelmandje) gemaakt met de huidige producten 
        var table = document.getElementById("tabel"); 
      var rowcount= table.rows.length; 
      var row = table.insertRow(rowcount); 
      var cell1 = row.insertCell(0); 
      var cell2 = row.insertCell(1); 
      var cell3 = row.insertCell(2); 
      var cell4 = row.insertCell(3); 
      cell1.innerHTML = artikeltel[teller]; 
      cell2.innerHTML = prijstel[teller]; 
      cell3.innerHTML = waarde; 
      cell4.innerHTML = totaal; 

       } 

дорогой все. Спасибо за комментарии. Я очистил код до той части, где я делаю таблицу. Итак, каждый раз я изменяю значение количества элементов, которые он хочет (то есть variabele «waarde»), чем он не удаляет старую таблицу, а просто кладет ее ниже существующей.

Я надеюсь, что это очищает его немного :)

+6

Да ладно. Пожалуйста, уменьшите прилагаемый код до ТОЛЬКО соответствующей части (например, той части, которая вызывает проблему с таблицей). – jfriend00

+1

Это очень много кода для просеивания людей. Сделайте некоторые отладки и сузите проблему. Когда вы проходите код в отладчике, в какой момент он отклоняется от ожидаемого поведения? – David

+0

Чем писать код, который смотрит на таблицу и обновляет ее. – epascarello

ответ

0

Поскольку у вас есть столько кода, я не буду беспокоиться, глядя через все это, но я просто сделать предположение, вместо этого: Вы просто добавление любых изменений в html на существующие строки таблицы. Если это так, то я бы предложил простое решение по стиранию существующего html для таблицы каждого обновления и замену его на все с текущим содержимым корзины (которое вы должны хранить отдельно от отображаемой таблицы html уже).

Вы также можете указать идентификаторы каждой строки, которая является уникальной для этого элемента, а затем получить доступ к ячейке количества для конкретного элемента, который вы меняете, и изменить этот текст, чтобы отразить новое количество.

Смежные вопросы