![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 271 Pomógł: 4 Dołączył: 5.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mam taki problem, a mianowice w koszyku chciałbym zmieniać ilość produktów, a następnia chciałbym, zeby mi sie automatycznie zmieniła zawartośc wygenerowaniej tabeli.. tzn. cena łączna za określoną ilośc produktyów i cena za całą zawartośc koszyka.
Znalazłem http://advajax.anakin.us/phpsolutions/3.php wprawdzie nie działa, ale można pobrać wersje offline i tam jest ok. Pytanie jak robić lepiej, tzn. w XMLu generować całą nową tabele i ją wyświetlać, czy tylko generować te pola, które się zmieniły. W drugimy przypadku musiałbym dynamicznie zmieniać zawartosc JS, wprawdzie nie ma z tym problemu, ale pytanie czy to ma sens?? Może ma ktoś jakieś gotowe rozwiązanie? -------------------- created by chomiczek
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 20.02.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Z moich zabaw ("czystym" AJAXem) wynika, że:
nie da się np. wstawić dodatkowego rzędu (<tr></tr>) do tabeli (<table></table>) poprzez JavaScriptowe .innerHTML. Przeglądarka (przynajmniej Mozilla Suite, nie testowałem pod innymi) nie interpretuje kodu tabeli po raz wtóry i to co miało być dodatkowym wierszem, pojawia się u góry strony (jako treść poza tabelą). Niemniej przyznam się szczerze, że nie testowałem czy można np. zmienić zawartość jednej pojedyńczej komórki (<td></td>) poprzez .innerHTML, niemniej wydaje mi się, że taka modyfikcja zawartości strony zostałaby poprawnie wyświetlona. -------------------- Wieczność jest bardzo nudna, szczególnie pod koniec - Woody Allen
/home/env: Apache 2.2 | PHP 5.2 | MySQL 5.1 | FreeBSD 8.0 | NetBeans 6.8 | symfony 1.4 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 271 Pomógł: 4 Dołączył: 5.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
sądze, że nie masz racji, bo przecież nie musisz mieć w kodzie tabeli, a np. znacznik
a następnie w JS podmieniać zawartość 'tutajBedzieTabela' i w JS preparowac układ tabeli etc. -------------------- created by chomiczek
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 521 Pomógł: 0 Dołączył: 3.11.2003 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
PPK na quirksmode zamieścił kiedyś obszerne zestawienie, jak można generować w JS tabele, wraz z pomiarami wydajności i testami przeglądarek.
Jeżeli nie zmieniasz struktury tabeli, to najlepszy będzie innerHTML oczywiście. Jeżeli zmieniasz (np. dodajesz wiersze), to już zależy od przeglądarki i trzeba wybrać najbardziej optymalny sposób. |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 20.02.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Cytat(chomiczek) sądze, że nie masz racji, bo przecież nie musisz mieć w kodzie tabeli, a np. znacznik a następnie w JS podmieniać zawartość 'tutajBedzieTabela' i w JS preparowac układ tabeli etc. Możliwe, że wyraziłem się zbyt skrótowo, przydałby się przykład. Miałem na myśli modyfikację zawartości tabeli np. takiej: Plus kod w JS:
Tak jak wspominałem, taka "konstrukcja" w Mozilli się rozjeżdża. -------------------- Wieczność jest bardzo nudna, szczególnie pod koniec - Woody Allen
/home/env: Apache 2.2 | PHP 5.2 | MySQL 5.1 | FreeBSD 8.0 | NetBeans 6.8 | symfony 1.4 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
nie znam sie na AJAXIE, ale moze za kazdym razem do diva cala tabele "wpisuj"? a nie wiersz... cos takiego nie przejdzie (szczegolnie walidacji..:/)
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 271 Pomógł: 4 Dołączył: 5.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ciekawe dlaczego miałoby nie przejść walidacji??
Przecież kod jaki będzie widoczny to: * tutajBedzieTabela nie jest informacją o tym, ze tam zostanie wklejony kod tabeli, a okresla w jakim ID ta tabele będzie się miała pojawić, tzn. w tym przypadku jesli w JS odwołam sie do tutajBedzieTabela to tabela za pomocą inner.HTML zostanie włożona w środek tego diva , jednak podglądając kod zobaczymy pustego DIVa z określonym ID. -------------------- created by chomiczek
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat </tr> <div id="tab_wiersz"> </div> </table> to to jest mozliwe? DIV pomiedzy </tr> a </table> sorcia, escaflowne cos takiego wkleil.. myslalem, ze ty... sorki jeszcze raz Ten post edytował LBO 4.04.2006, 12:02:57 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 220 Pomógł: 0 Dołączył: 20.02.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Cytat(LBO) Cytat </tr> <div id="tab_wiersz"> </div> </table> to to jest mozliwe? DIV pomiedzy </tr> a </table> [...] Prawdę mówiąc, nie mam na chwilę obecną innego pomysłu jak dopisać JavaScriptem kilka wierszy do tabeli. -------------------- Wieczność jest bardzo nudna, szczególnie pod koniec - Woody Allen
/home/env: Apache 2.2 | PHP 5.2 | MySQL 5.1 | FreeBSD 8.0 | NetBeans 6.8 | symfony 1.4 |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 271 Pomógł: 4 Dołączył: 5.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Hmm.. div był przykładem, równie dobrze możesz napisać <tr id="dynamicznie>TUTAJ BDĄ INNE TD</tr>
jeśli jednak w JS dynamicznie otrzyma wartosc np. <td>x</td><td>sds</td> to zostanie nadpisane TUTAJ BDĄ INNE TD i niechodzi o to do czego schodzimy, bo wygenerowanie całej tabeli w XMLu to nie problem, problem jest wtedy kiedy chce żeby zmienila mi sie tlyko jedna zawartość.. -------------------- created by chomiczek
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Tak czytam i czytam i juz nie wiem o co chodzi
![]() Chcesz zmienic tylko daną komórkę w tabeli? Zaden problem w js. Zalozmy ze chcesz zmienic drugą komorke w ostatnim wierszu:
edit: ale chyba nie oto ci chodzilo... ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 271 Pomógł: 4 Dołączył: 5.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
no własnie ja tez tak czytam i czytam.. i też doszedłem do wniosku, ze jednak nie o to mi chodziło.. a mianowicie.. hmm.. moze inaczej.. tutaj mam linke:
http://karamanski.pl/sklepik/koszyk.php?kosmetyk=168||add dodany zostanie od razu dodany do koszyka jeden produkt.. chodzi mi o to, żeby móc np. wpisać wartość 2 i poprzez wciśnięcie enteru powinni się zmienic ceny: ZAWARTOŚĆ KOSZYKA: lewy róg cena łącz: tabela DO ZAPŁATY: te kwoty powinny się przeliczć, a w bazie oczywiście powinna znaleźć się informacja o 2 produktach tego typu. -------------------- created by chomiczek
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Teraz i ja rozumiem
![]() mozesz dodac wpis do bazy ajaxem, i zwrocic ajaxem nową sumę. Tę wartośc zapodać do funkcji co napisalem (bądź też do innej podobnej)i nią zmienic wartośc tej komórki. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 271 Pomógł: 4 Dołączył: 5.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Udało mi sie w końcu napisać (4 godziny snu to jednak za mało... i jak ktoś napisał chyba na php.pl - nie kazuj programistą pracować po godzinach, w celu szybszego zakończenia projektu, bo projekt nie będzie zakończony na czas.)
Wracając do myśli przewodniej: pod FF działa, a pod IE mam komunikat: NIEZNANY BŁAD CZASU WYKONYWANIA (?) linka: http://karamanski.pl/sklepik/koszyk.php?kosmetyk=221||add -------------------- created by chomiczek
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 14.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
pod FF działa, a pod IE mam komunikat: NIEZNANY BŁAD CZASU WYKONYWANIA (?) Witam, być może niepotrzebnie odgrzewam kotleta, ale komuś może się przydać. W testowym, nowym projekcie też miałem ten problem i nie mogłem znaleźć rozwiązania. Otórz IE wywala ten komunikat kiedy jest błąd składni HTML (o dziwo!) Zauważyłem to kiedy przerabiałem strone z html, na xhtml + css. Morał: bałagan kodu przy budowie strony jest zły. pozdrawiam, matheush |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 55 Pomógł: 0 Dołączył: 17.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Właśnie męczę się z tym problemem od dłuższego czasu. Znalazłem wyjaśnienie (może komuś się przyda):
"Okazuje sie ze IE nie pozwala na przypisywanie wartosci poprzez innerHTML dla elementow tabeli innych niz: CAPTION TD TH" -------------------- art of programming
|
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 180 Pomógł: 6 Dołączył: 10.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 27.06.2025 - 11:43 |