Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Zasto ovo ne radi u IE a radi u Firefox-u

[es] :: Javascript i AJAX :: Zasto ovo ne radi u IE a radi u Firefox-u

[ Pregleda: 2676 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

01011011

Član broj: 561
Poruke: 2341
65.216.70.*



+2 Profil

icon Zasto ovo ne radi u IE a radi u Firefox-u30.04.2008. u 23:49 - pre 193 meseci
Code:
    
function UpdateAmountSelected(){

                var sum = 0;
                var gn, elem;
                var prefix = "accountSummary_";
                var lblTotalDue = "_lblTotalDue";

                var frm = document.forms[0];     
                                          
                    for(i=0;i< frm.length;i++)                                
                        {                                                                 
                            e=frm.elements[i];                                   
                            if(e.type=='checkbox' && e.name.indexOf('chkPay') != -1 && e.checked==true)
                            {
                                size = e.name.length;
                                
                                if (size == 27)
                                    item = prefix + e.name.substring(15,20) + lblTotalDue;
                                else if (size == 28)
                                    item = prefix + e.name.substring(15,21) + lblTotalDue;
                                else
                                    item = prefix + e.name.substring(15,22) + lblTotalDue;
                                
                                totalAmount = document.getElementById(item).textContent.substring(1);
                                                                
                                splitAmount = totalAmount.split(",")
                                
                                sum += parseFloat(splitAmount[0] + splitAmount[1])
                            }                    
                        }       
                        alert(sum)
                        //sum = formatCurrency(sum);
                        
                    //    document.getElementById("amtSelected").value = sum;
            }




Evo stavio sam cijelu funkciju, koja kad neko klikne na checkbox dodaje neku vrednost koja je u istom rekordu sa tim checkboxom i na kraju se treba ta vrednost ukucati u textbox.

Da ne sirim pricu, ovo je dio koda od java funkcije koja radi perfektno u firefoxu, a u internet exploreru nece... zasto je ovo slucaj? Da li neki od ovih stvari ne mogu da se koriste u exploreru?

[Ovu poruku je menjao 01011011 dana 01.05.2008. u 01:10 GMT+1]
 
Odgovor na temu

Vlatko Zdrale
Vlatko Zdrale
Chicago, USA

Član broj: 155036
Poruke: 102
*.hsd1.il.comcast.net.

Sajt: www.zemoon.com


+1 Profil

icon Re: Zasto ovo ne radi u IE a radi u Firefox-u01.05.2008. u 01:36 - pre 193 meseci
Sta ti daje debugger kao gresku?
Upravo zbog takvih sitnih razlika koje ti uzmu najvise vremena ti se isplati da koristis jquery ili nesto slicno...
 
Odgovor na temu

bzero
dev null
europe

Član broj: 5907
Poruke: 371
*.103.eunet.yu.

Jabber: bzero@elitesecurity.org
Sajt: www.google.com/search?q=b..


Profil

icon Re: Zasto ovo ne radi u IE a radi u Firefox-u01.05.2008. u 08:50 - pre 193 meseci
U IE ne postoji textContent, za IE ces morati da koristis innerText.

Never trust an operating system you don't have sources for.
 
Odgovor na temu

01011011

Član broj: 561
Poruke: 2341
65.216.70.*



+2 Profil

icon Re: Zasto ovo ne radi u IE a radi u Firefox-u01.05.2008. u 16:55 - pre 193 meseci
Procitao sam ovo za innerText i textContent i to sam popravio tako sto provjeravam koja je vrsta browsera i onda postavljam ali to nije rijesilo problem

Code:
            function UpdateAmountSelected(){
            
                var browserType = navigator.appName;
                var sum = 0;
                var gn, elem;
                var prefix = "accountSummary_";
                var lblTotalDue = "_lblTotalDue";

                var frm = document.forms[0];     
                                          
                    for(i=0;i< frm.length;i++)                                
                        {                                                                 
                            e=frm.elements[i];                                   
                            if(e.type=='checkbox' && e.name.indexOf('chkPay') != -1 && e.checked==true)
                            {
                                size = e.name.length;
                                
                                if (size == 27)
                                    item = prefix + e.name.substring(15,20) + lblTotalDue;
                                else if (size == 28)
                                    item = prefix + e.name.substring(15,21) + lblTotalDue;
                                else
                                    item = prefix + e.name.substring(15,22) + lblTotalDue;
                                
                                if (browserType == "Microsoft Internet Explorer")
                                    totalAmount = document.getElementById(item).innerText.substring(1);
                                else
                                    totalAmount = document.getElementById(item).textContent.substring(1);
                                
                                splitAmount = totalAmount.split(",")
                                
                                sum += parseFloat(splitAmount[0] + splitAmount[1])
                            }                    
                        }       
                        
                        sum = formatCurrency(sum);
                        
                        document.getElementById("amtSelected").value = sum;
            }



Problem se prikazuje na ovoj sledecoj liniji kada koristim Internet Explorer Script debugger.

Code:


if (size == 27)
                                    item = prefix + e.name.substring(15,20) + lblTotalDue;
                                else if (size == 28)
                                  [b]  item = prefix + e.name.substring(15,21) + lblTotalDue;[/b]
                                else
                                    item = prefix + e.name.substring(15,22) + lblTotalDue;


i govori mi da

Microsoft JScript runtime error: Object doesn't support this action

sad to je od zavisnosti koji click kliknem moze biti u prvom ovom if statementu, ili drugom ili trecem. Nije mi jasno jer kad koristim i Firebug debugger za fireforz i ovaj script debugger za mikrosoft i kopiram ovo



Code:
prefix + e.name.substring(15,21) + lblTotalDue;


u watch, ono mi daje pravi rezultat... ali tu puca... Sta mu znaci Object does not support this action... da li neko zna... Kako me ovo nervira, moram da popravim neki bug na starom codu, inace radimo redesign u VS2008 gdje ima javascript debugger, pa ce me to spasiti..

 
Odgovor na temu

01011011

Član broj: 561
Poruke: 2341
65.216.70.*



+2 Profil

icon Re: Zasto ovo ne radi u IE a radi u Firefox-u01.05.2008. u 17:11 - pre 193 meseci
Da ne povjerujes... neka od ovih rijeci item, sum, ili size jer rezervisana rijec u internet exploreru i zato mi nije radilo... samo sam promijenio imena od promjenjivih i sve radi kako treba...

uzas, koliko sam se namucio da skontam to...

hvala svima na odgovorima.
 
Odgovor na temu

[es] :: Javascript i AJAX :: Zasto ovo ne radi u IE a radi u Firefox-u

[ Pregleda: 2676 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.