ugrás a tartalomhoz

DOM-ban elemek formon kívül

vtsoftware · 2011. Feb. 22. (K), 19.37
Üdv mindenkinek.

Egy elég fura problémával futottam szembe.
Előfordulhat hogy valami eszméletlen egyszerű dolgon akadok meg, de nem igazán tudom hogy-s-mint keressem...

Adott egy oldal, amin az összes link, form jQuery-n át AJAX-al frissíti az oldal tartalmát...
Ez eddig rendben, a gond az hogy némely a betöltött tartalomban levő űrlap egyes elemei a formon kívülre kerülnek.

Pl.:
Ez egy alap űrlap:
<form>
<input type="text"...>
<textarea name="bla"...></textarea>
<input... még pár mező...
<select name="sel" multiple="multiple" size="10">
...
</select>
<input type="submit">
</form>
Ez rendben is van.

DOM-ban viszont:
<form>
<input type="text"...>
<textarea name="bla"...></textarea>
<input... még pár mező...
</form>
<select name="sel" multiple="multiple" size="10">
...
</select>
<input type="submit">
Így már viszont nem klappol mert a submit gomb is kívül esik a formon. Erre még megoldás lenne ha id-t adok a formnak és a submit helyett button onclick eseményében .submit()-el elküldöm, de kiesik a select is.
Így pedig már hibás az egész...
Próbáltam hogy a select után tettem input mezőt, akkor sem jó, amit tudtam próbáltam, sikertelenül.

Valakinek van-e ötlete hogy lehetne ezt helyrerázni?
Előre is köszönöm...
 
1

HTML

Poetro · 2011. Feb. 22. (K), 19.55
Nem lehet hogy valami hiba van a HTML-ben? Jó lenne, ha a tényleges HTML-t idéznéd be (és mindenképpen színezve), hogy lássuk hol lehet benne a hiba. Valószínűleg van egy lezáratlan elem, vagy hasonlók.
2

Semmi olyat nem találtam

vtsoftware · 2011. Feb. 22. (K), 21.15
Semmi olyat nem találtam, sem lezáratlan elemet, sem félreírást.
A kódot ha nem gond nem másolom ide, elég hosszú lenne... ehelyett inkább:

http://vtsoftware.hu/wl/dom.html
http://vtsoftware.hu/wl/form.html

Átnéztem az egész forrást, semmi hibát nem találtam, W3C Validatorral is megnéztem, lezáratlan elem hibát nem írt.
Pl. mire gondoltál hasonlók alatt?
3

Jó sok hiba

Poetro · 2011. Feb. 22. (K), 22.11
Eleve a HTTP fejléc nem ad meg karakter kódolást, és az AJAX esetén az alapértelmezett karakterkódolás az UTF-8, viszont UTF-8 kódolással nézve a dokumentumot, az oldal nem igazán használható. A HTML attribútumokban levő szövegek nincsenek megfelelően kódolva. Nem szerepelhet attribútumban például >, < karakter önállóan, azoknak a HTML entitása (&gt;, &lt;) kell, hogy szerepeljen. Ezeket a jQuery, vagy a böngésző esetleg önálló HTML elemeknek érzékelheti, ezért megváltozik a HTML struktúrája. Valamint <p> elemben ne szerepeljen már semmilyen blokk típusú elem.
4

Hibás, de...

vtsoftware · 2011. Feb. 23. (Sze), 17.26
Hibás, tudom, de ezt a két forrást csak kiollóztam...
De valamitől helyrejött.
Tegnap kijavítottam pár hibát a validátor hibaüzenetei közül, ma pedig megnéztem, és lám, jó.
A <p>-t próbáltam hogy kicseréltem DIV-re, akkor az sem oldotta be.

Nem tudom melyik hozta helyre, valószínű cache-ből töltötte be, pedig ki van kapcsolva, ennek még utánajárok.

De minden esetre köszönöm...