Keskustelut - Muu Ohjelmointi - Entinen kenttä täysi, uusi kenttä tilalle?


LiDE 05:58 11.8.06 
Kuinka luonnistuupi kun täyttää jotain lomaketta esimerkiksi lataa jotain liitetiedostoja tai vastaavia webmailissa niin ku on yksi kenttä siinä, jonka täyttää niin samantien alle ilmestyy uusi tyhjä kenttä uutta tiedostoa varten? Ja sama toimisi toisinpäin kun tyhjentää tyhjän yläpuolella olevan kentän eli viimeisen täyden kentän niin alta häviää tuo toinen tyhjä? Miten tämä on toteutettu?
weicco 06:19 11.8.06 
Javascript ja DOM kikkailulla. Googleta noilla hakusanoilla.
ctrl+alt+del 08:01 11.8.06 
AJAXillahan noita voi tehdä.
eis 09:59 11.8.06 
Eikai tuohon ajaxia tarvi? perusjavascriptiä.
ZcMander 11:12 11.8.06 
Itseasiassa etsin itsekkin samaa, jos joku löytää esimerkin niin linkin saa laittaa.
feenix 11:15 11.8.06 
Kentän onblurriin kiinni funktio joka lisää haluttuun kohtaan vaan uuden input-elementin sopivilla attribuuteilla. Siinähän se.
weicco 12:02 11.8.06 
Document olion createElement metodi on taikasana.
editoitu: 14:38 11.8.06
akx 14:38 11.8.06 
weicco kirjoitti:
Document olion createElement metodi on taikasana.

Document-olion createElement-metodi ovat kumpikin yhdyssanoja. *shrug*

Anteeksi, en voinut vastustaa.
weicco 15:04 11.8.06 
Toisesta lauseestasi puuttuu objekti, se mitä et voinut vastustaa. :)
feenix 22:25 11.8.06 
akx kirjoitti:
Document-olion createElement-metodi ovat kumpikin yhdyssanoja. *shrug*


YM "Document-olion" ja "createElement-metodi" ovat kumpikin yhdyssanoja HTH

Ei pidä nipottaa jos itse mokaa heti peruslauserakenteissa. Ei voi sanoa "ovat kumpikin" jos esittelet vain yhden... ;)
LiDE 01:03 12.8.06 
Eli eikö ole muuta vaihtoehtoa kuin JavaScript hömpötys?
feenix 09:22 12.8.06 
LiDE kirjoitti:
Eli eikö ole muuta vaihtoehtoa kuin JavaScript hömpötys?


On, Javascript-skripti. Ei sen hömpötys tarvitse olla.

Ja tietysti jos vain IE:llä haluaa toimivan niin voi vaikka VBScriptiä naputtaa. Tai Flashilla voit tehdä halutessasi. Mutta mitään muuta järkevää ei ole.
raimo 10:28 12.8.06 
Myöskin CSS on keksitty. Ja ainakin pienimuotoisessa järjestelmässä sen display = none|block|inline on käyttökelpoinen.
Tarkoitan sitä että kenttä2 on oikeastikin jo olemassa, mutta sen display = none jolloin se ei näy, kunnes kenttä1 on täytetty, jolloin kenttä2.display vaihdetaan -> inline jolloin kenttä2 pulpahtaa näkyväksi.

Mozillan DOM-referenssi on ihan hyvä, ja Google löytää kasoittain muita
http://developer.mozilla.org/en/docs/Gecko_DOM_Reference

HEH! käyttävät innerHTML:ää sielläkin ;D (nyt on päivä/viikko/kuukausi/vuosi/elämä -pelastettu, ehehehe) :)
http://developer.mozilla.org/en/docs/DOM:document.createElement
eis 15:07 12.8.06 
raimo kirjoitti:
Myöskin CSS on keksitty. Ja ainakin pienimuotoisessa järjestelmässä sen display = none|block|inline on käyttökelpoinen.
Tarkoitan sitä että kenttä2 on oikeastikin jo olemassa, mutta sen display = none jolloin se ei näy, kunnes kenttä1 on täytetty, jolloin kenttä2.display vaihdetaan -> inline jolloin kenttä2 pulpahtaa näkyväksi.

Mites sie tuon vaihdon meinasit tehdä jos ei javascriptillä?
raimo 16:19 12.8.06 
No tietenkin javascriptillä, milläs muulla? Yritin sitä sanoa että ihan pakko ei ole elementtejä luoda lennossa, jos ei halua, vaan voi myös piilottaa/näyttää niitä CSS:llä ja javascriptillä. :)

Tosin eipä se elementtien luominen ole kovinkaan monimutkaista, että en minä sitäkään tarkoittanut että niin ei kannattaisi tehdä, vaan että CSS-display on yksi vaihtoehto.


Vaikka ei asiaan mitenkään liity, niin kysyn tässä välissä tämmöistä, jos vaikka joku tietäisi:
Miksi, oi miksi, Gtk2::Entry ei fokusoidu jos Gtk2::Window on popup?
Entryyn ei pysty kirjoittamaan mitään, koska hiiri ei mene siihen. (oikea korva kuitenkin toimii = Copy/Paste yms.)
Jos samainen ikkuna asetetaan (luodaan) kuten "toplevel" se pahuksen Entry toimii ok.
Mistä moinen, ja mikä avuksi? APUA! ;D