[JS] Dlaczego nie działa skrypt wstawiający wiersze do tabeli?

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
martinprz
Piegowaty Guziec
Piegowaty Guziec
Posty: 14
Rejestracja: 14 gru 2008, 17:22
Płeć: Mężczyzna
Wersja Ubuntu: 11.04

[JS] Dlaczego nie działa skrypt wstawiający wiersze do tabeli?

Post autor: martinprz »

Witam wszystkich!

Przerobiłem pewien kod w JS, który ma wstawiać wiersze do tabelki, kod wygląda następująco:

http://www.wklej.org/hash/6efb3839e6/

oraz tabelka

http://www.wklej.org/hash/1a98c1fd20/

Problemem jest to że po kliknięciu Add row, zamiast wstawiać wiersze to wstawia komórki z napisem Tabela3 i nie wstawia pól checkbox na końcu wierszy.

Nie wiem jak wprowadzić licznik globalny, tak aby po wstawianiu nowego wiersza, numer checkboxa tez zmieniał się o 1/

Czy wie ktoś jak rozwiązać ten problem?

Pozdrawiam
dawidgarus
Wytworny Kaczor
Wytworny Kaczor
Posty: 418
Rejestracja: 09 lut 2007, 23:17
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: [JS] Dlaczego nie działa skrypt wstawiający wiersze do tabeli?

Post autor: dawidgarus »

ja bym to zrobił w inny, trochę bardziej prymitywny sposób, aczkolwiek skuteczny:

Kod: Zaznacz cały

function addRow(id){
    var tbody = document.getElementById(id).getElementsByTagName("TBODY")[0];
    tbody.innerHTML = tbody.innerHTML + '<tr>......</tr>';
}
martinprz
Piegowaty Guziec
Piegowaty Guziec
Posty: 14
Rejestracja: 14 gru 2008, 17:22
Płeć: Mężczyzna
Wersja Ubuntu: 11.04

Odp: [JS] Dlaczego nie działa skrypt wstawiający wiersze do tabeli?

Post autor: martinprz »

Nie wiem czy o to chodzi:

Kod: Zaznacz cały

<script type="text/javascript">
function addRow(id){
    var tbody = document.getElementById(id).getElementsByTagName("TBODY")[0];
    tbody.innerHTML = tbody.innerHTML + '<tr>+
      + '<td><span>15</span></td>'+
      + '<td><span>T3</span></td>'+
      + '<td><span>6WAY</span></td>'+
      + '<td><span>01</span></td>'+
      + '<td><span>01</span></td>'+
      + '<td><span>000</span></td>'+
      + '<td><span>Z4</span></td>'+
      + '<td><span>K</span></td>'+
      + '<td><span>782-12-000-00 C4</span></td>'+
      + '<td><span>11111111111111111111111</span></td>'+
      + '<td><span>15S1.1/120ELA</span></td>'+
      + '<td><span>STD</span></td>'+
      + '<td><span>WT</span></td>'+
      + '<td><span>LGP</span></td>'+
      + '<td><span>6W</span></td>'+
      + '<td><span>INNE</span></td>'+
      + '<th><input type="checkbox" name="wybor" value="nr_1"/></th></tr>' +;
}
</script>
</HEAD>
<BODY>
<table width=100% id="tabela3" name="tabela3" onclick="rowYourBoat();">

      <tbody>

      <tr class="mouseOut">

          <td class="td1" align="center"><span><b> 15 </b></span></td>
          <td class="td2" align="center"><span><b> T3 </b></span></td>
          <td class="td3" align="center"><span><b> 6WAY </b></span></td>
          <td class="td4" align="center"><span><b> 01 </b></span></td>
          <td class="td5" align="center"><span><b> 01 </b></span></td>
          <td class="td6" align="center"><span><b> 000 </b></span></td>
          <td class="td7" align="center"><span><b> Z4 </b></span></td>
          <td class="td8" align="center"><span><b> K </b></span></td>
          <td class="td9" align="center"><span><b> 782-12-000-00 C4 </b></span></td>
          <td class="td10" align="left"><span><b> 11111111111111111111111 </b></span></td>
          <td class="td11" align="center"><span><b> 15S1.1/120ELA </b></span></td>
          <td class="td12" align="center"><span><b> STD </b></span></td>
          <td class="td13" align="center"><span><b> WT </b></span></td>
          <td class="td14" align="center"><span><b> LGP </b></span></td>
          <td class="td15" align="center"><span><b> 6W </b></span></td>
          <td class="td16" align="center"><span><b> INNE </b></span></td>
          <th class="td17" align="center"><span><input type="checkbox" name="wybor" value="nr_1"/></span></th>

       </tr>

       </tbody>

       </table>

       <a href="javascript:addRow('tabela3')">Add row</a>

</BODY>
I chyba tutaj coś zrobiłem źle:(, bo nie działa.
dawidgarus
Wytworny Kaczor
Wytworny Kaczor
Posty: 418
Rejestracja: 09 lut 2007, 23:17
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: [JS] Dlaczego nie działa skrypt wstawiający wiersze do tabeli?

Post autor: dawidgarus »

coś takiego, ale ja tu widzę pełno błędów składniowych...
czwarta linijka. brakuje ' przed +.
nie powinno być dwóch plusów obok siebie:

Kod: Zaznacz cały

      + '<td><span>LGP</span></td>'+
      + '<td><span>6W</span></td>'+
no i przed ; nie powinno być +. reszta chyba ok. nie jestem tylko pewien, czy js dopuszcza, aby podzielić tekst na kilka linijek.
martinprz
Piegowaty Guziec
Piegowaty Guziec
Posty: 14
Rejestracja: 14 gru 2008, 17:22
Płeć: Mężczyzna
Wersja Ubuntu: 11.04

Odp: [JS] Dlaczego nie działa skrypt wstawiający wiersze do tabeli?

Post autor: martinprz »

Zmieniłem tak jak zaleciłeś:

Kod: Zaznacz cały

<script type="text/javascript">
function addRow(id){
    var tbody = document.getElementById(id).getElementsByTagName("TBODY")[0];
    tbody.innerHTML = tbody.innerHTML + '<tr>'+
      + '<td><span>15</span></td>'+
      + '<td><span>T3</span></td>'+
      + '<td><span>6WAY</span></td>'+
      + '<td><span>01</span></td>'+
      + '<td><span>01</span></td>'+
      + '<td><span>000</span></td>'+
      + '<td><span>Z4</span></td>'+
      + '<td><span>K</span></td>'+
      + '<td><span>782-12-000-00 C4</span></td>'+
      + '<td><span>11111111111111111111111</span></td>'+
      + '<td><span>15S1.1/120ELA</span></td>'+
      + '<td><span>STD</span></td>'+
      + '<td><span>WT</span></td>'+
      + '<td><span>LGP</span></td>'+
      + '<td><span>6W</span></td>'+
      + '<td><span>INNE</span></td>'+
      + '<th><input type="checkbox" name="wybor" value="nr_1"/></th></tr>';
}
</script>
Ale teraz jak nacisnę Add row, to dodawane jest coś jakby wiersze, ale w nich są linijki z napisami NaN..........:

Kod: Zaznacz cały

 15   	 T3   	 6WAY   	 01   	 01   	 000   	 Z4   	 K   	 782-12-000-00 C4   	 11111111111111111111111   	 15S1.1/120ELA   	 STD   	 WT   	 LGP   	 6W   	 INNE   	
NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
dawidgarus
Wytworny Kaczor
Wytworny Kaczor
Posty: 418
Rejestracja: 09 lut 2007, 23:17
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: [JS] Dlaczego nie działa skrypt wstawiający wiersze do tabeli?

Post autor: dawidgarus »

wywal plusy z początku każdej linijki.
martinprz
Piegowaty Guziec
Piegowaty Guziec
Posty: 14
Rejestracja: 14 gru 2008, 17:22
Płeć: Mężczyzna
Wersja Ubuntu: 11.04

Odp: [JS] Dlaczego nie działa skrypt wstawiający wiersze do tabeli?

Post autor: martinprz »

Wszystko działa jak trzeba! Dzięki wielkie dawidgarus, zrobiłeś miły prezent na moje urodziny:)!

Mógłbym się skonsultować z Tobą z dwoma skryptami w JS? Umieściłem je na forum: jeden dotyczy sumowania wyników w ostatniej kolumnie tabeli a drugi sortowania?

Pozdrawiam!
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Bing [Bot] i 3 gości