DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > (X)HTML, JavaScript, DHTML, XML, CSS
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

(X)HTML, JavaScript, DHTML, XML, CSS Client scripting tehnologije, Dynamic HTML, Cascading Stylesheets, XML i standardi

Odgovori
 
Alati teme Način prikaza
Staro 13. 10. 2006.   #11
Bojan Zivanovic
profesionalac
Professional
 
Avatar Bojan Zivanovic
 
Datum učlanjenja: 06.06.2005
Lokacija: Pančevo - Pariz
Poruke: 287
Hvala: 6
8 "Hvala" u 8 poruka
Bojan Zivanovic is on a distinguished road
Pošaljite poruku preko Skype™ za Bojan Zivanovic
Default

Kôd:
addNewRow = function (vrednost) {
    novo = document.getElementById ('skriveni').firstChild.cloneNode('true');
    novo.value = vrednost;
    document.getElementById ('rowovi').appendChild (novo);
}
Evo, mala modifikacija prethodne funkcije, tako da dozvoljava i ubacivanje vrednosti (predpostavljam da je to trazeno, ako nije, izvinjavam se).
Sad samo pozoves addNewRow('ovde neka vrednost') i lepo...
Nedavno sam za klijenta radio nesto slicno, naravno na ovom principu, tako da mogu da okacim deo koda ili pomognem dodatno...

P.S. Kod gore podrazumeva da je u pitanju text polje.. Ako je u pitanju select, onda promeni selectedIndex (npr. novo.selectedIndex = 1). Index naravno pocinje od nule.
__________________
The knack of flying is learning how to throw yourself at the ground and miss.

Poslednja izmena od Bojan Zivanovic : 13. 10. 2006. u 18:59.
Bojan Zivanovic je offline   Odgovorite uz citat
Staro 13. 10. 2006.   #12
noviKorisnik
Dejan Katašić
Wrote a book
 
Avatar noviKorisnik
 
Datum učlanjenja: 10.06.2005
Lokacija: Novi Sad
Poruke: 1.017
Hvala: 129
86 "Hvala" u 43 poruka
noviKorisnik će postati "faca" uskoro
Default

Hm, pa prvo dete 'skrivenog' je red (div) a ne element forme, tako da ovom izmenom praktično ne menjaš ništa.

Citat:
Originalno napisao dee
samo jedno dodatno pitanje -> kako da ovo koristim kad editiram postojece zapise iz baze? znaci, citam iz baze x zapisa i njima punim setove (rowove), kako im pridjeljujem vrijednosti?

smijem li echo onoliko inputa koliko ih ima u bazi sa odgovarajucim imenima (tipa polje1[] itd itd) ili moram punit javascript polja? prvo mi je jasno, drugo nisam siguran?
Što se tiče pitanja o modifikaciji postojećih zapisa u bazi, ovaj kod je potpuno beskoristan jer se dodavanje odnosi uvek na novi, nepostojeći zapis, a izbacivanje postojećeg reda iz formulara nije analogija brisanju iz baze :-)))

Inače, i ovo kloniranje redova s elementima formulara ima svoje zamke - prvi korak je što elementi u name atributu imaju '[]' - a tu leži i zamka - jer ukoliko se u tom redu nalazi checkbox ili radio button, ili pak multiselect - nastaje prava zbrka i gubi se povezanost indeksa niza primljenih podataka s redovima na klijent strani ;-)
noviKorisnik je offline   Odgovorite uz citat
Staro 13. 10. 2006.   #13
dee
Domagoj Horvat
Expert
 
Avatar dee
 
Datum učlanjenja: 24.07.2006
Lokacija: Zagreb
Poruke: 502
Hvala: 22
10 "Hvala" u 8 poruka
dee is on a distinguished road
Pošaljite ICQ poruku za dee
Default

Citat:
Originalno napisao noviKorisnik
Što se tiče pitanja o modifikaciji postojećih zapisa u bazi, ovaj kod je potpuno beskoristan jer se dodavanje odnosi uvek na novi, nepostojeći zapis, a izbacivanje postojećeg reda iz formulara nije analogija brisanju iz baze :-)))
kontam, al mislim da bi se ipak dalo iskoristit. imamo situaciju: jednim formularom (koji sadrzi x ovakvih slogova) se definira jedna tabela. kod unosa smo rekli sve, stvar je jasna. a kod edita, ono sta meni treba je napunit formu sa onoliko slogova (rowova) koliko ih ima definirano za tu tablicu u bazi.

konkretno, rowovi opisuju tablicu na nacin:

1. text input -> ime kolone
2. select -> boja slova kolone
3. select -> boja pozadine kolone
4. text input -> duljina kolone

jedna tablica, naravno, ima vise kolona -> odatle vise setova input polja.

sto se tice indexiranja checkboxova i multiselect lista (pretpostavljam da radi indexiranja govoris da je zamka), s tim nema problema jer ih nece biti.

a sto se tice edita, meni i ne treba da mi click na 'remove' odma mice te zapise iz baze jer pri updateu cu napravit:

- ucitati postojece iz baze u formu
- izmijenit formu kako vec (nebitno)
- upisat novo stanje forme ispocetka u definicije odogvarajuce tabele u bazi (sto znaci, cijeli formular ce se pozivat sa odredjenim idformulara=xy), izmijenit ih kako vec i novo stanje iznova upisat (phpom, naravno). [slicno ko otvaranje fajla sa 'w' opcijom -> truncate file to zero ]

znaci, sve sto mi je crna rupa je podacima iz baze popunit ovako generiranu formu...
__________________
postoje ludosti bez kojih je nemoguce ljudsko dostojanstvo

Poslednja izmena od dee : 14. 10. 2006. u 00:13.
dee je offline   Odgovorite uz citat
Staro 14. 10. 2006.   #14
noviKorisnik
Dejan Katašić
Wrote a book
 
Avatar noviKorisnik
 
Datum učlanjenja: 10.06.2005
Lokacija: Novi Sad
Poruke: 1.017
Hvala: 129
86 "Hvala" u 43 poruka
noviKorisnik će postati "faca" uskoro
Default

Ako razumem - formular se odnosi na definiciju kolona tabele (žao mi što liči na ponavljanje, ali bitno je da se nešto ne ispusti). Dakle, pored inputa u okviru ovih rowova (hehe, dobro zvuči :-) koji predstavljaju pojedine kolone tabele, postoji i input koji identifikuje samu tabelu (najverovatnije neki hidden). Tada se proces updatea svodi u stvari na brisanje svih postojećih zapisa iz baze koji se odnose na tu tabelu, i tek naknadni upis stanja definisanog na klijentskoj strani.

U tom slučaju ima smisla ostaviti isti obrazac s mogućnošću uklanjanja postojećih zapisa. Što se tiče pripreme inicijalnog stanja formulara, najlakše je generisati postojeće zapise sa serverske strane unutar rowova (prolazak kroz petlju s rezultatima iz baze i dodavanje value atributa na inpute i selected atributa na odabrane opcije). Dakako, moguće je odraditi inicijaciju i s klijentske strane, slično predloženoj modifikaciji funkcije addNewRow i uz pripremu JS strukture koja odgovara podacima iz baze, ali ne vidim potrebu za tim...
noviKorisnik je offline   Odgovorite uz citat
Staro 14. 10. 2006.   #15
dee
Domagoj Horvat
Expert
 
Avatar dee
 
Datum učlanjenja: 24.07.2006
Lokacija: Zagreb
Poruke: 502
Hvala: 22
10 "Hvala" u 8 poruka
dee is on a distinguished road
Pošaljite ICQ poruku za dee
Default

Citat:
Originalno napisao noviKorisnik
Ako razumem - formular se odnosi na definiciju kolona tabele (žao mi što liči na ponavljanje, ali bitno je da se nešto ne ispusti). Dakle, pored inputa u okviru ovih rowova (hehe, dobro zvuči :-) koji predstavljaju pojedine kolone tabele, postoji i input koji identifikuje samu tabelu (najverovatnije neki hidden). Tada se proces updatea svodi u stvari na brisanje svih postojećih zapisa iz baze koji se odnose na tu tabelu, i tek naknadni upis stanja definisanog na klijentskoj strani.
upravo tako. postoji i hidden id cijele tabele koja ima x kolona (= rowova) i update se svodi na brisanje svega iz baze i unos onog sto je zadnje uneseno u formu (tako mi se cini najjednostavnije).

Citat:
Originalno napisao noviKorisnik
U tom slučaju ima smisla ostaviti isti obrazac s mogućnošću uklanjanja postojećih zapisa. Što se tiče pripreme inicijalnog stanja formulara, najlakše je generisati postojeće zapise sa serverske strane unutar rowova (prolazak kroz petlju s rezultatima iz baze i dodavanje value atributa na inpute i selected atributa na odabrane opcije).
e ovo je dio koji ne znam, kako ovo da izvedem? smijem li (posto hocu zadrzat funkcionalnost 'add new row' i 'remove', mogu li za inicijalno punjenje prosto radit

Kôd:
<input type=text value=$nesto>
hoce li mi s tim radit add new i remove? jer ako da, onda je sve rijeseno

ili moram punit preko neceg tipa:

Citat:
echo "<script>";
echo "addnewrow(vrijednost1)";
echo "addnewrow(vrijednost2)";
echo "addnewrow(vrijednost3)";
echo "</script>";
sorry ako sam lupio, uglavnom, moram li phpom generirat pozive javascript funkcije ili mogu direkat kreirat html input elemente?
__________________
postoje ludosti bez kojih je nemoguce ljudsko dostojanstvo
dee je offline   Odgovorite uz citat
Staro 14. 10. 2006.   #16
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

Citat:
Originalno napisao dee
Kôd:
<input type=text value=$nesto>
hoce li mi s tim radit add new i remove? jer ako da, onda je sve rijeseno
radice, jer ti kad printas na serveru browser toga nije svestan, to je isto kao da si mu poslao staticni html dokument, nema razlike sto se browsera tice.

samo, stavljaj navodnike oko atributa, a nije zgoreg ni xHTML da ispostujes pa da pises:
<input type="text" ... value="$nesto" />
__________________
Leadership is the art of getting people to want to do what you know must be done.
ivanhoe je offline   Odgovorite uz citat
Staro 14. 10. 2006.   #17
dee
Domagoj Horvat
Expert
 
Avatar dee
 
Datum učlanjenja: 24.07.2006
Lokacija: Zagreb
Poruke: 502
Hvala: 22
10 "Hvala" u 8 poruka
dee is on a distinguished road
Pošaljite ICQ poruku za dee
Default

e sad fino odoh sve to skupa onda sklopit
pa javim rezultate...


Citat:
samo, stavljaj navodnike oko atributa, a nije zgoreg ni xHTML da ispostujes pa da pises:
<input type="text" ... value="$nesto" />
ma naravno, ovo gore sam udario cisto ilustracije radi. ionako radim u xhtml strict.


tnx!

pozdrav
__________________
postoje ludosti bez kojih je nemoguce ljudsko dostojanstvo
dee je offline   Odgovorite uz citat
Staro 06. 11. 2006.   #18
dee
Domagoj Horvat
Expert
 
Avatar dee
 
Datum učlanjenja: 24.07.2006
Lokacija: Zagreb
Poruke: 502
Hvala: 22
10 "Hvala" u 8 poruka
dee is on a distinguished road
Pošaljite ICQ poruku za dee
Default

evo mene s jos jednim pitanjem.

zahvaljujem na dosadasnjim odgovorima, radi sve savrseno. a imam jos jedan zahtjev pa mi pade na pamet da bi se to vjerojatno jako zgodno dalo napravit javascriptom...

imam SELECT listu u ovisnosti od koje se javascriptom generira nekoliko text fieldova ispod nje. recimo da postoji pet opcija u listu, to znaci da imam pet setova text fieldova. ono sta mi treba je da kod submita posalje samo one koji su popunjeni. drugim rijecima, postoji li nacin da javascriptom prodjem kroz sve text fieldove na stranici i obrisem neispunjene tako da u $_POST dobijem 'ciste vrijednosti' odnosno samo one unesene?


ima zapravo jos jedna bolja opcija, ako je to moguce u javascriptu...
setovi text fieldova su mi u divovima koji imaju id="param0", id="param1"...,id="paramn"

n je naravno broj opcija u SELECT listi.

postoji li opcija da ja ubijem sve divove (ili da im poubijam djecu ) osim paramx - gdje je 'x' index trenutno selektirane opcije u listi (u trenutku submita)?

mlogo hvala in advance!

ps.
siguran sam da ovo moze, ali ubi me javascript...zderem se s tim vec satima i nikako da mi proradi...
__________________
postoje ludosti bez kojih je nemoguce ljudsko dostojanstvo

Poslednja izmena od dee : 06. 11. 2006. u 18:40.
dee je offline   Odgovorite uz citat
Staro 06. 11. 2006.   #19
dee
Domagoj Horvat
Expert
 
Avatar dee
 
Datum učlanjenja: 24.07.2006
Lokacija: Zagreb
Poruke: 502
Hvala: 22
10 "Hvala" u 8 poruka
dee is on a distinguished road
Pošaljite ICQ poruku za dee
Default

PS#2.

i molio bih nekoga ako ima neki dobar javascript tutorial gdje se covjek moze pristojno snac i gdje mogu jednom za svagda rijesit ove dileme oko childova, nodova i ostalog. googlam, toga ima na tone, ali nigdje da nadjem nekako sistematicno.

sjecam se, pa prije sigurno 2 godine, NoviKorisnik je cini mi se na esu postavio link prema nekom sajtu gdje je fenomenalno bilo prikazano cijelo 'drvo' javascripta, mislim objekti, grananje, methods, properties... al nikako to vise nac...
__________________
postoje ludosti bez kojih je nemoguce ljudsko dostojanstvo
dee je offline   Odgovorite uz citat
Staro 06. 11. 2006.   #20
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

pogledaj http://www.howtocreate.co.uk/tutoria...ript/dombasics

EDIT: uzgred ovo sto ti hoces je potpuno nepotrebna akrobacija, zasto naprosto na server strani ne ignorises prazna polja, ili ih cak obrises ako ti je tako lakse..

EDIT2: pogledaj i ovo http://developer.mozilla.org/en/docs...DOM_Interfaces
__________________
Leadership is the art of getting people to want to do what you know must be done.

Poslednja izmena od ivanhoe : 06. 11. 2006. u 21:01.
ivanhoe je offline   Odgovorite uz citat
Odgovori


Alati teme
Način prikaza

Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
Joomla Community Builder - dodavanje plugina Dzoni-GS Poslovne ponude i zapošljavanje 0 17. 04. 2010. 16:22
Brisanje poruka, kontekst diskusije i sve slicno cvele Obaveštenja, predlozi i pitanja 24 07. 10. 2007. 20:58
youtube dodavanje na sajt i preload pcigre Flash 6 02. 05. 2007. 17:37
Brisanje većeg broja slogova iz MySQL baze Dragi Tata SQL baze podataka - Sponzor: Baze-Podataka.net 14 22. 04. 2007. 17:46
Brisanje poslednje linije tekstualnog fajla Blood PHP 10 24. 11. 2005. 22:58


Vreme je GMT +2. Trenutno vreme je 09:43.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.