JS dla mnie to naprawdę czarna magia i nie mam pojęcia jak i co z tym zrobić.
Mam gotowy przykład z neta który po kliknięciu dodaj dodaje kolejne inputy.
Przy nich jest usuń i kiedy klikne to usuwa tą linijkę.
echo ' <script type="text/javascript"> function addFormField() { var id = document.getElementById("id").value; $("#divTxt").append("<p id=\'row" + id + "\'>  <a href=\'#\' onClick=\'removeFormField(\"#row" + id + "\"); return false;\'>Usuń</a> <label for=\'txt" + id + "\'><input class=\'dodaj_przedmiot\' type=\'text\' name=\'nazwa_przedmiotu[]\' value=\'\' id=\'txt" + id + "\'> </label><label for=\'txt2" + id + "\'><input class=\'dodaj_nr\' type=\'text\' name=\'nr_przedmiotu[]\' value=\'\' id=\'txt" + id + "\'> </label><label for=\'txt3" + id + "\'><input class=\'dodaj_ilosc\' type=\'text\' name=\'ilosc[]\' value=\'\' id=\'txt" + id + "\'></label><p>"); $(\'#row\' + id).highlightFade({ speed:1000 }); id = (id - 1) + 2; document.getElementById("id").value = id; } function removeFormField(id) { $(id).remove(); } </script> ';
Mój problem polega na tym że chciałbym je teraz edytować, stworzyłem funkcję która wyświetla tyle linijek ile było wcześniej utworzonych (inputow) i chciałbym teraz mieć przy nich taki guziczek żeby usunąć daną linijkę, i nie mogę tego zrobić w żaden sposób (w js)
Plik edycji w pętli, i tworzy tyle linijek ile wcześniej utworzyłem i zapisałem ale teraz jak usunąć daną linijkę

echo '<input class="dodaj_przedmiot" type="text" name="nazwa_przedmiotu[]" value="'.$nazwa_przedmiotu[$t].'"> <input class="dodaj_nr" type="text" name="nr_przedmiotu[]" value="'.$nr_przedmiotu[$t].'"> <input class="dodaj_ilosc" type="text" name="ilosc[]" value="'.$ilosc[$t].'"><br><br>';
muszę użyć coś takiego ale jakie id i co to za #row
<p id=\'row" + id + "\'>  <a href=\'#\' onClick=\'removeFormField(\"#row" + id + "\"); return false;\'>Usuń</a>


Chyba że tą całą edycję muszę zrobić w js a nie w petli foreach?? nie mam pojecia.
Mam taki mały pomysł, jeśli się nie da w js to może jest guziczek który po naciśnięciu kasuje wpisy w 3 wybranych polach?
WIem że jest tylko żeby kasowało w wybranych polach.
Wszystkie te dane łącze potem
$ilosc = $_POST['ilosc'];
I tu pytanko, czy jeśli pole input jest puste to żeby tego nie zapisywało do zmiennej?

Poradziłem sobie

Usuwam przez js dane z podanych inputow a nastepnie sprawdzam czy w tabeli jest pusty wpis jesli tak to go nie zapisuje.
$ilosc = $_POST['ilosc']; $r = 0; foreach($ilosc as $line) { if($ilosc[$r] != "") $ilosc2[] = $ilosc[$r]; $r++; }
Inaczej niż chciałem na początku ale efekt jest ten sam.
Pozdrawiam