Cześć,
mam pytania dot. ww. filmu.
Gdy w kodzie źródłowym z zadania drugiego zamieniam nazwę funkcji na:
write()
i zatwierdzam wpisane liczby klikając na przycisk, wszystko znika a przeglądarka rozpoczyna ładowanie w nieskoność. Zmiany nazwy dokonałem na oryginalnym kodzie (tym z paczki).
Testowałem na dwóćh przeglądarkach i dwóch komputerach. Czy ta nazwa jest zastrzeżona czy to wina softu?
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Funkcja write() faktycznie dotyczy HTML'a.
Co do reszty kodu znalazłem w nim błąd. Gdy nie użyjemy parsera dla typu liczbowego (parseInt) wpisana wartość w pierwszym polu tekstowym z przediału <2-9> zostanie zinterpretowana jako zwykły znak. Aby zobaczyć efekt w drugim polu spróbujcie wpisać liczbę z przedziału <11-19>. Gdy zamiast np. 2 damy 02 parser uruchamiany jest automatycznie i liczby wyświetlają się poprawnie.
Jakby ktoś potrzebował to jest mój sposób na rozwiązanie problemu. Dodałem jeszcze funkcje o których mowa na końcu filmiku.
<!DOCTYPE html>
<html lang="pl">
<html>
<head>
<meta charset="utf-8" />
<script type="text/javascript">
function _write()
{
var number1 =document.getElementById("field1").value;
var number2 =document.getElementById("field2").value;
var number=Math.abs(number2-number1);
var err = false;
var str=" ";
if(!((number1=parseInt(number1)) || (number1==0)))
{
str="WARTOŚĆ W PIERWSZYM POLU NIE JEST LICZBĄ!";
err = true;
}
if(!((number2=parseInt(number2)) || (number2==0)))
{
str="WARTOŚĆ W DRUGIM POLU NIE JEST LICZBĄ!"
if(err)
str="WARTOŚCI W OBU POLACH NIE SĄ LICZBAMI!";
err = true;
}
if(number1==number2)
{
err = true;
str= "WARTOŚCI W OBU POLACH SĄ TAKIE SAME!";
}
if(!err)
{
for(i=0;i<=number;i++)
{
str= str + " " + number1;
if(number1<number2)
++number1;
else
--number1;
}
}
document.getElementById("result").innerHTML=str;
}
</script>
</head>
<body>
<input type="text" id="field1" />
<input type="text" id="field2" />
<input type="submit" value="SHOW" onclick="_write()"/>
<div id="result"></div>
</body>
</html>