• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

błędy w skrypcie obliczającym średnią.

Object Storage Arubacloud
0 głosów
719 wizyt
pytanie zadane 7 czerwca 2018 w JavaScript przez toffik93 Bywalec (2,820 p.)

Witam. Zwracam się do was z prośbą o pomoc w rozwiązaniu problemu, jakim są dwa błędy w skrypcie JS. Wspomniane błędy to: 

1. Uncaught ReferenceError: Invalid left-hand side in assignment,

2. Uncaught ReferenceError: oblicz is not defined at HTMLInputElement.onclick.

Kod:

<script>
function oblicz(){
var sr1=parseInt(document.getElementById("sr1").value);
var sr2=parseInt(document.getElementById("sr2").value);
var sr3=parseInt(document.getElementById("sr3").value);
var wynik = (sr1+sr2+sr3)/3;
if(sr1=""||sr2=""||sr3=""||isNaN(sr1==true||(sr1==true||(sr1==true||{
alert("Wpisz poprawne dane");
}
else{
sr1=parseInt("sr1");
sr2=parseInt("sr2");
sr3=parseInt("sr3");
}
document.getElementById("wynik").innerHTML= wynik;
}
</script>

 

1 odpowiedź

0 głosów
odpowiedź 7 czerwca 2018 przez BT101 Stary wyjadacz (12,540 p.)
edycja 7 czerwca 2018 przez BT101

Ta linia jest kompletnie źle i w ogóle co ty starasz się zrobić?

if(sr1=""||sr2=""||sr3=""||isNaN(sr1==true||(sr1==true||(sr1==true||{
function oblicz(){
    var sr1=parseInt(document.getElementById("sr1").value);
    var sr2=parseInt(document.getElementById("sr2").value);
    var sr3=parseInt(document.getElementById("sr3").value);
    var wynik = (sr1+sr2+sr3) / 3;
    if(sr1 === "" || sr2 === "" ||sr3 === "" || isNaN(sr1) || isNaN(sr2) || isNaN(sr3)) {
        alert("nie");
    } else {
        sr1=parseInt("sr1");
        sr2=parseInt("sr2");
        sr3=parseInt("sr3");
    }
    document.getElementById("wynik").innerHTML= wynik;
}

Gdzie wywołujesz funkcje oblicz()? 

Nie kumam też po co w tym else jest parseInt

komentarz 7 czerwca 2018 przez toffik93 Bywalec (2,820 p.)
linia if ma służyć temu, że jeśli jedno z pól jest puste lub zostanie wpisana wartość, która nie jest liczbą , to wtedy ma zostać wyświetlony alert. parseInt odpowiada za aby skrypt wykonywał się na liczbach rzeczywistych, a jeśli nie, to wtedy ma nastąpić konwersja do takich liczb. W dodatku dałem na stronie diva z wynikiem. Czego mi zabrakło? muszę jeszcze pobrać ten przycisk?

Mam na myśli:

var przycisk = (document.getElementById("button").value);
komentarz 7 czerwca 2018 przez BT101 Stary wyjadacz (12,540 p.)
Nie znasz podstaw programowania jak masz tam if(a=b) to przypisujesz wartość nie porównujesz a na końcu nie ma ), nie odpowiedziałeś na pytanie o wywołanie funkcji więc pewnie nie wiesz nawet o co chodzi, musisz przerobić tutorial dla bardzo początkujących. Weź może coś na udemy 30h podobno ok.
komentarz 7 czerwca 2018 przez toffik93 Bywalec (2,820 p.)
ja uczyłem się, że te dwa nawiasy przy nazwie funkcji oznaczają - wywołaj tę funkcję.

= - to oznacza przypisanie

== - to oznacza porównanie
komentarz 7 czerwca 2018 przez BT101 Stary wyjadacz (12,540 p.)

Otwórz sobie najpierw to

https://jsfiddle.net/obwa2qvu/4/

a potem to

https://jsfiddle.net/obwa2qvu/1/

i porównaj...

= - to oznacza przypisanie 

== - to oznacza porównanie

No a w ifie powinno sie porównywać a nie przypisywać xD

komentarz 8 czerwca 2018 przez toffik93 Bywalec (2,820 p.)

jeśli chcesz zobaczyć wywołanie funkcji, to wywołuję ją w taki oto sposób:

<input type="button" value="oblicz" onclick="oblicz()">

funkcja powinna zastać wywołana za pomocą onclick="oblicz()">, ponieważ ma to się stać po naciśnięciu przycisku. 

komentarz 8 czerwca 2018 przez BT101 Stary wyjadacz (12,540 p.)

funkcja powinna zastać wywołana za pomocą onclick="oblicz()">,

Lepiej dodać addEventListnera, ładniej to wygląda separujesz kod HTML od JS:

document.getElementById("myBtn").addEventListener("click", oblicz); 

Podobne pytania

0 głosów
1 odpowiedź 419 wizyt
0 głosów
2 odpowiedzi 2,485 wizyt
pytanie zadane 13 grudnia 2015 w C i C++ przez Ciri Gaduła (3,380 p.)

92,632 zapytań

141,500 odpowiedzi

319,878 komentarzy

62,011 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...