Stránka: 1 z 1
| [ Príspevkov: 10 ] | |
Autor | Správa |
---|
Registrovaný: 20.03.08 Prihlásený: 08.03.17 Príspevky: 596 Témy: 149 | 149 Bydlisko: Houston, Texas |
Ahojte, mám div do ktorého po stlačení odkazu načitam pomocou ajaxu formular, a potom ho chcem odoslat, ale nejako sa mi nedarí, mam to nejak takto
Kód: function odosli(formular){ var xhr = new XMLHttpRequest(); xhr.open('POST', 'odosli.php', true); xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); if (xhr.overrideMimeType) { xhr.setRequestHeader('Connection', 'close'); } xhr.send('hodnot='+formular.pole.value); xhr.onreadystatechange = function() { if (xhr.readyState == 4) { alert(xhr.responseText); } } a ten formular čo sa načitava je asi takýto Kód: <form> <input name="pole[1]" value="1" type="checkbox" /> <input name="pole[5]" value="1" type="checkbox" /> <input name="pole[8]" value="1" type="checkbox" /> <input onclick="odosli(this.form);" name="pridaj" value="Pridaj" type="submit" /> </form>
a problém je že v js kode mi píše formular ako undefinned a keď dám odoslať tak mi ho odošle ako GET
Pls,čo robím zle
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
Musis tie polia spracuvat po jednom, formular['pole[1]'], formular['pole[5]'] atd.
|
|
Registrovaný: 20.03.08 Prihlásený: 08.03.17 Príspevky: 596 Témy: 149 | 149 Bydlisko: Houston, Texas |
ale ja chcem aby sa to poslalo ako array,
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
Kód: xhr.send("pole[1]="+formular['pole[1]']+"&pole[5]="+formular['pole[5]']);
Nepojde to takto? Samozrejme sa to bude dat zjednoduchsit, aby si to nemusel vypisovat, ale najprv povedz, ci to funguje podla tvojich predstav.
|
|
Registrovaný: 20.03.08 Prihlásený: 08.03.17 Príspevky: 596 Témy: 149 | 149 Bydlisko: Houston, Texas |
a keby som tie checkboxi prerobil napr na
Kód: <input name="pole[]" value="1" type="checkbox" /> <input name="pole[]" value="5" type="checkbox" /> <input name="pole[]" value="8" type="checkbox" /> ?
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
Ako chces potom hladat a identifikovat tie inputy v strome dokumentu?
Nechapes zrejme jednu vec - name inputu je dolezite akurat vtedy, ked normalne odosielas normalny formular, prehliadace su naprogramovane tak, aby name brali do uvahy. Pomocou XMLHttpRequest ziaden formular neodosielas, len robis obycajny HTTP request. Pre Javascript je name="pole[]" klasicky atribut s nejakou hodnotou, a podla .pole nevyhladas name=pole[], ani keby si sa poskladal do kocky.
Samozrejme sa da napisat fcia, ktora ti vyhlada vsetky name=pole[] a ich hodnoty moze zlepit do suvisleho retazca, ktory sa len odosle, ale to iste si mozes spravit priamo v tele kodu.
|
|
Registrovaný: 20.03.08 Prihlásený: 08.03.17 Príspevky: 596 Témy: 149 | 149 Bydlisko: Houston, Texas |
no hej, lenže tie čísla 1, 5, 8 mi generuje php skript, a ja potrebujem proste aby ten druhý skript ktorý to spracuváva, aby dostal tie čísla ktore zaškrtnem
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
DOMom si vyberies vsetky <input>y z formulara, cyklom precitas ich name a otestujes oproti regexpu /pole\[[0-9]+\[/. Potom to uz bude jednoduche. Ak nezvladnes, napisem ti to vecer, ale aspon sa pokus.
Resp. ak mas vsetky s name="pole[]", tak ani regexp pouzit nemusis.
Len otazka - maju sa do vysledneho retazca v xhr.send() pridavas len zaskrtnute checkboxy, vsak?
|
|
Registrovaný: 20.03.08 Prihlásený: 08.03.17 Príspevky: 596 Témy: 149 | 149 Bydlisko: Houston, Texas |
ano len tie, ale myslel som že ono to potom JS berie ako pole, a to by malo odoslat nie?
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 | 34 Bydlisko: Brno |
Ale ziadne pole, to 'pole[]' je proste retazec a JS s nim naraba tak isto, ako keby si tam mal hocico ine.
Pozri nieco taketo:
Kód: var e = document.getElementsByTagName('FORM')[0].getElementsByTagName('INPUT'), v = []; /*zmen si pristup k formularu podla seba*/ for (var i = 0, l = e.length; i < l; i++) { if (e[i].name == 'pole[]' && e[i].type == 'checkbox' && e[i].checked) { v.push('pole[]='+e[i].value); } } var s = v.join('&'); V premennej s mas potom string rovno pripraveny na odoslanie, v tvare napr. pole[]=0&pole[]=4&pole[]=9.
|
|
Stránka: 1 z 1
| [ Príspevkov: 10 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
 | v JavaScript, VBScript, Ajax | 2 | 664 | 19.01.2008 17:20 TikyConte |  | [ Choď na stránku: 1, 2, 3 ] v Technológia .NET | 67 | 2949 | 28.06.2013 22:08 walther |  | v Redakčné systémy | 1 | 1232 | 22.08.2016 10:26 hatto13 |  | v PHP, ASP | 3 | 1104 | 19.05.2011 14:08 Flety |  | v Ostatné programy | 0 | 341 | 20.08.2013 20:43 samson3333 |  | [ Choď na stránku: 1, 2 ] v PHP, ASP | 48 | 2791 | 28.03.2008 13:16 Blackshadow |  | v Ostatné programy | 1 | 435 | 06.01.2010 23:30 shiro |  | v PHP, ASP | 4 | 485 | 16.04.2008 14:12 El_locco |  | v PHP, ASP | 5 | 550 | 10.02.2009 12:49 neopagan |  | v Sieťové a internetové programy | 3 | 879 | 17.12.2007 10:04 capricorn7 |  | v Ostatné | 0 | 385 | 19.10.2013 10:53 DeiForm |  | v PHP, ASP | 3 | 669 | 02.03.2011 14:18 Ďuri |  | v Sieťové a internetové programy | 3 | 1269 | 24.11.2010 17:34 ShadowSong |  | v PHP, ASP | 6 | 381 | 15.08.2012 10:46 stenley |  | v PHP, ASP | 13 | 1181 | 16.10.2010 20:31 shaggy |  | [ Choď na stránku: 1, 2 ] v PHP, ASP | 55 | 2079 | 14.09.2007 14:44 Blackshadow |
|