Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dodawanie pol bez przeladowania strony
Forum PHP.pl > Forum > Po stronie przeglądarki
misty
hej, musze zrobic cos takiego, ze na klikniecie przycisku 'dodaj' pojawiac sie beda nowe pola typu input field, a na przycisk 'usun' - znikac.
Potrzebuje to zrobic bez przeladowania strony. Wiem, ze sie da, podejrzewam ze pewnie jakis ajax? albo cos? ale jakoze nie jestem mocno biegla w tym, chcialabym Was proscie o jakies wskazowki/linki.

bede wdzieczna za wszystkie sugestie,
pzdr,

misty
nospor
Jeśli mają się pojawiać i znikać tylko w przeglądarce, bez żadnych modyfikacji na serwerze to zwykły js wystarczy.
Jeśli zmiany mają zachodzić też na serwerze, np w bazie, to juz musisz użyć ajax
misty
w sumie to tylko w przegladarce, bo rozumiem ze to bedzie widoczne w $_POST?

tzn, oprocz tych guzikow jest jeszcze glowny - zapisz - i on wywoluje akcje zapisu - rozumiem ze te pola dodane js beda widoczne w $_POST? tzn ich wartosci?

i jeszcze jedno - jak moge dodac takie pole w js?
bo przykladowo:

  1. <input type="button" value="Dodaj" onClick="addFields();"/>


no i: jak to zrobic by adFields dodawalo pola w odpowiednie miejsce? jakiegos diva zrobic i tam?
a pytanie drugie - jak zdefiniowac takie wstawianie pola? tzn nie wiem czy sa w js jakies metody typu 'createInputFieldWithParams' ?

pzdr
sunpietro
zawsze możesz zajrzeć do tego artykułu: dodawanie pól do tabeli bez przeładowania
tam jest to fajnie opisane
misty
wyglada niezle, dzieki za linka-zaraz to przeanalizuje i dam znac!

pzdr

jest super i kod nie jest taki zawily az.
dzieki!!

jeszcze mam jedno pytanie z tym zwiazane. wlasciwie to jednym z pol bedzie select list i chce aby wypelniona byla danymi z bazy. wiem ze na pewno jakos sie da, ale czy ktos z Was moglby podac mi 'hasla' pod jakimi powinnam szukac?

pzdr
webdice
Uwaga! Podaję hasło: AJAX.
nospor
Po co ajax? Opcje dla selecta można już mieć przygotowane, np w tablicy, albo nawet w ukrytym select.
Gdy są w tablicy to potem tylko je dodać do utworzonego select.
Gdy są w całym ukrytym select to wystarczy tylko dany select zklonować (metoda clone() w jQuery) i go pokazać
misty
webdice, domyslam sie ze pewnie ajax, prosilam o cos konretniejszego, jakich metod szukac etc.

nospor, sprobuje Twojego rozwiazania i dam znac czy ok.

pzdr!

nospor, po czesci Twoj pomysl mi pomogl. po czesci poniewaz dziala pod firefoxem, a pod ie niee..
do takiego kodu w js:
  1. var f1 = '<td>'+selectList+'</td>';


wstawiam moja selectList, ktora jest przekazywana jako parametr.

a budowana jest:
  1. while ($row = $dbHandler->fetch_array($params['result'])) {
  2.  
  3. if (strlen(($row[$params['valueFieldName']])) < 1) {
  4. continue;
  5. }
  6.  
  7. $choicelist .= "<option value=\"".$row[$params['idFieldName']]."\"";
  8.  
  9. if ($_SESSION[$params['idFieldName']] == $row[$params['idFieldName']]) {
  10. $choicelist .= " selected=selected";
  11. $_SESSION[$params['valueFieldName']] = $row[$params['valueFieldName']];
  12. }
  13.  
  14. $choicelist .= ">".$row[$params['valueFieldName']]."</option>";
  15. }
  16.  
  17. $filterList = "<select name=\"".$params['selectListName']."\" size=\"1\" >";
  18. $filterList .= $choicelist;
  19. $filterList .= "</select>";
  20.  


i $filterList podaje do tej metody ktora mi tworzy te pola. Pod firefoxem jest ok, pod ie - nie. oczywiscie nie wiadomo dlaczego.. a moze Ty masz pomysl? moze ie jest wrazliwy na ' albo " ?

pzdr

dostaje cos takiego 'unterminated string constant' i odwoluje mi sie to linijki w pliku totalnie nie zwiazanej z tworzeniem tej select listy..

zauwazylam ze ja po prostu nie moge przekazac zmiennej z php do js.. pod ie. to jest troche dziwne..

w phpie mam kod testowy:
  1. $test = "test;

w html'u zas wywoluje metode:
  1. $(document).ready(testMe($test));


zas metoda testMe to po prostu:
  1. function testMe(val){
  2. alert(val);
  3. }



czemu mi to nie dziala pod IE?? pod FIrefoxem jest ok..

no i udalo sie w koncu smile.gif

zmienilam tylko na:

  1. var test = '$test';
  2. $(document).ready(testMe(test));</script>


i poszlo smile.gif zrobilam juz tak by szla cala select lista - ktora przygotowuje sobie wczesniej w phpie na podstawie danych z bazy. fajnie smile.gif troche to jednak wkurza ze pod firefoxem dziala prawie wszystko, a pod ie to trzeba sie glowic.. i czas schodzi..

dzieki za pomoc i nospor dzieki za podpowiedz smile.gif
nospor
Cytat
troche to jednak wkurza ze pod firefoxem dziala prawie wszystko, a pod ie to trzeba sie glowic.. i czas schodzi..
To nie wina IE a Twoja.
Tekst to tekst. Tekst trzeba zawsze brać w apostrofy, niezależnie czy to php, mysql czy js. Ty nie brałaś więc miałaś błędy - proste smile.gif
Na przyszłośc patrz jak wygląda źródło wygenerowanej strony to szybciej uporasz się z błędami.
misty
no dobra, ale czemu bylo pod firefoxem? chodzi mi o to, ze jak jest blad programisty to nie powinno dzialac. a nie, ze pod jedna przegladarka jest ok, a pod druga nie. to jest irytujace.
no ale grunt ze dziala juz
nospor
Bo niektóre przeglądarki myślą za programistów a niektóre nie wink.gif

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.