View previous topic :: View next topic |
Author |
Message |
357ica
Joined: 26 Apr 2005 Posts: 75 Location: Zagreb
|
Posted: 26.04.2009 16:27 Post subject: Javascript pitanjce |
|
|
Ako ima dobra duša...
Kreiram formu preko js-a. Imam funkciju:
function createForm(sName,sMethod,sAction){
var oTemp=document.createElement("form");
oTemp.setAttribute("name",sName);
oTemp.setAttriubte("method",sMethod);
oTemp.setAttribute("action",sAction);
// append it
document.body.appendChild(oTemp);
}
window.onload=function(){
createForm("frm","post","some-action-request-page");
}
window.onload poziva funkciju. U jednoj funkciji kasnije provjerim if(document.forms["frm"])....
vraća mi "undefined" or null or not object.
E da, ovo radi savršeno u FF, ali prokleti IE me je*****.
U čemu je stvar, gdje griješim? |
|
|
Back to top |
|
|
357ica
Joined: 26 Apr 2005 Posts: 75 Location: Zagreb
|
Posted: 26.04.2009 17:07 Post subject: |
|
|
Uspjeo sam.
IE kreira formu. samo je problem što IE ne reagira kad pozivam formu preko document.forms["some_form_name"].
Ako pogledam koliko formi imam u dokumentu (to mi je poznato), alert(document.forms.length); dobijem točan broj formi. Ako umjesto document.forms["some_form_name"], napravim document.forms[1], IE vrati formu.
Onda sam napravio fn:
function getFormIE(formName){
for(i=0;i<document.forms.length;i++){
if(document.forms[i].name==formName){
return i;
break;
}
}
dalje u kôdu imam:
// Mozzila firefox works fine
oTemp=document.forms[formName];
// IE patch
if(! oTemp){
oTemp=document.forms[getFormIE(formName)];
}
Sad, koliko je pametno tražiti index forme preko for petlje? |
|
|
Back to top |
|
|
PaNtHeR
Joined: 17 Sep 2003 Posts: 161
|
Posted: 26.04.2009 18:24 Post subject: |
|
|
Probaj s jQuery ili MooTools. MIslim da ćeš tamo za 10 minuta napravit isti posao koji u "običnom" JS-u radiš pola sata, a i oni se brinu za IE;FF;... razlike u implementacijama JS-a....
Daš svojoj formi ID i nađeš ju tako... neznam u čemu je prob?... Jedino ako je ovo neki školski zadatak pa baš mora bit u JS...
Šta točno misliš pod "index forme" i zašto ti on treba? |
_________________ • |
|
Back to top |
|
|
357ica
Joined: 26 Apr 2005 Posts: 75 Location: Zagreb
|
Posted: 26.04.2009 18:38 Post subject: |
|
|
PaNtHeR wrote: | Šta točno misliš pod "index forme" i zašto ti on treba? |
Ma prokleti array index od form collection-a, kad sam već odlučio provrtiti array kolekcije formi u dokumentu. Fora je što mrdam po već napravljenoj stvari, treba nekaj pokrpati, ubaciti, a onaj koji je pisao izvorni html ga je usro do bola s tablicama i ispisom asp-om. Pa nebum još i to proučavo. Bum to sa jscriptom riješio. Ionako sam riješio 70% posla sa ovim komadićem koda.
Thx, anyway |
|
|
Back to top |
|
|
PaNtHeR
Joined: 17 Sep 2003 Posts: 161
|
Posted: 26.04.2009 20:00 Post subject: |
|
|
Quote: | Fora je što mrdam po već napravljenoj stvari, treba nekaj pokrpati, ubaciti, a onaj koji je pisao izvorni html ga je usro do bola s tablicama i ispisom asp-om. |
aha, onda razumljivo |
_________________ • |
|
Back to top |
|
|
zytzagoo mi3.crew
Joined: 25 Aug 2003 Posts: 1842 Location: Zagreb, Hrvatska
|
Posted: 29.04.2009 19:22 Post subject: |
|
|
Mozda bi i jednostavno proradilo da formi uz name setas i id atribut, a onda nemas potrebe
za loopanjem kroz forms collection:
oTemp.setAttribute("id", sName);
Nisam probao doduse, ali vjerujem da bi trebalo raditi (osim da nekim cudom na toj stranici
vec nemas kreiranu formu sa nazivom / id-om "frm"?) |
_________________ [+]I[+]am[+]my[+]own[+]religion[+] |
|
Back to top |
|
|
357ica
Joined: 26 Apr 2005 Posts: 75 Location: Zagreb
|
Posted: 29.04.2009 22:06 Post subject: |
|
|
zytzagoo wrote: | Mozda bi i jednostavno proradilo da formi uz name setas i id atribut, a onda nemas potrebe
za loopanjem kroz forms collection:
oTemp.setAttribute("id", sName);
Nisam probao doduse, ali vjerujem da bi trebalo raditi (osim da nekim cudom na toj stranici
vec nemas kreiranu formu sa nazivom / id-om "frm"?) |
Jesam, postavio sam i taj atribut, da se osiguram za svaki slučaj. Thx anyway |
|
|
Back to top |
|
|
zytzagoo mi3.crew
Joined: 25 Aug 2003 Posts: 1842 Location: Zagreb, Hrvatska
|
|
Back to top |
|
|
357ica
Joined: 26 Apr 2005 Posts: 75 Location: Zagreb
|
Posted: 02.05.2009 08:11 Post subject: |
|
|
Zahvaljujem, za ovaj drugi primjer sa scope-om varijabli znam. Malo sam se igrao sa scope-om u funkcijama. Ako postaviš varijablu bez deklaracije var, onda imaš globalnu varijablu. A kaj sad, kad je javacript loosley typed.
Mislim da je najpametnije dohvatiti element preko ID-a. Dohvat preko name-a izbjegavati. IE isto tako kiksa na document.getElementsByTagName(*).
Ja bih : IE+ |
|
|
Back to top |
|
|
|