Çözüldü JavaScript Koddaki hata nerede?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

Fleure

Centipat
Katılım
4 Mart 2023
Mesajlar
294
Daha fazla  
Cinsiyet
Erkek
HTML:
<html>
<head>
    <script type="text/javascript">

        var s =0;
        function artir(){
            deger= document.getElementById("sayi");
            deger.value=s
            s++;
        }
        function azalt(){
            deger= document.getElementById("sayi");
            deger.value=s
            s--;
        }
    </script>

</head>
<body>
    <button type="button" onclick="azalt()">-</button>
    <input type="text" value="0" size="5" id="sayi" name="sayi">
    <button type="button" onclick="artir()">+</button>
</body>
</html>

Böyle bir kod yazdım. Fakat ilk + ya basışımda -1, ilk - ye basışımda +1 kalanlarında ise + basınca +1 , - basınca -1 oluyor. İlk basışta neden öylede öbürlerinde normal ?
 
Son düzenleyen: Moderatör:
Çözüm
Hocam hemen 1 dk bekleyin size kodu atayim.

@Fleure hocam anladığım kadarıyla böyle istiyorsunuz.

JavaScript:
<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>Document</title>
</head>
<body>
 <button id="at">arttır</button>
 <button id="az">alat</button>
 <h1 id="deger"></h1>
 <hr>
 <h1 style="color: red;" id="deger2"></h1>
 <script>
 let at = document.getElementById("at")
 let az = document.getElementById("az")
 let deger = document.getElementById("deger")
 let deger2 = document.getElementById("deger2");
 let value = 0
 at.addEventListener("click",function(e){
 value++
 deger.innerHTML = value.
 deger2.innerHTML = value.

 e.preventDefault();
 })
 az.addEventListener("click",function(e){
 value--
 deger.innerHTML = value.
 deger2.innerHTML = value.

 e.preventDefault();
 })
 </script>
</body>
</html>

@533388 hocam muhtemelen kod çalışmıyacak çünkü Value'ların yanındaki noktalrı silin.
@Fleure hocam bu kodu deneyin.

JavaScript:
<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>Document</title>
</head>
<body>
 <button id="at">arttır</button>
 <button id="az">alat</button>
 <h1 id="deger"></h1>
 <script>
 let at = document.getElementById("at")
 let az = document.getElementById("az")
 let deger = document.getElementById("deger")
 let value = 0

 at.addEventListener("click",function(e){
 value++
 deger.innerHTML = value.
 e.preventDefault();
 })
 az.addEventListener("click",function(e){
 value--
 deger.innerHTML = value.
 e.preventDefault();
 })
 </script>
</body>
</html>
 
Çalışmadan, yorulmadan ve üretmeden, rahat yaşamak isteyen toplumlar; evvela haysiyetlerini, sonra hürriyetlerini daha sonra da istiklal ve istikballerini kaybetmeye mahkumdurlar.” Mustafa Kemal ATATÜRK

Böyle bir kod yazdım. Fakat ilk + ya basışımda -1, ilk - ye basışımda +1 kalanlarında ise + basınca +1 , - basınca -1 oluyor. İlk basışta neden öylede öbürlerinde normal ?
Hocam html sayfası yukarıdan aşağı render edildiği için sayfadaki dom'a müdahale edeceğin javascript kodlarını body kısmının en altına yazman gerekiyor. @533388 hocamın cevabının çalışması lazım.
 
Lag var çünkü :D

Değer mevcut değeri göstermiyor, bir önceki değeri gösteriyor. Aşağıdaki şekilde güncelle kodunu ki mevcut değeri göstersin.

Kod:
<html>
<head>
    <script type="text/javascript">

        var s = 0;
        function artir(){
            s++;
            deger= document.getElementById("sayi");
            deger.value=s;
        }
        function azalt(){
            s--;
            deger= document.getElementById("sayi");
            deger.value=s;
        }
    </script>

</head>
<body>
    <button type="button" onclick="azalt()">-</button>
    <input type="text" value="0" size="5" id="sayi" name="sayi">
    <button type="button" onclick="artir()">+</button>
</body>
</html>
 
Lag var çünkü :D

Değer mevcut değeri göstermiyor, bir önceki değeri gösteriyor. Aşağıdaki şekilde güncelle kodunu ki mevcut değeri göstersin.

Kod:
<html>
<head>
 <script type="text/javascript">

 var s = 0;
 function artir(){
 s++;
 deger= document.getElementById("sayi");
 deger.value=s;
 }
 function azalt(){
 s--;
 deger= document.getElementById("sayi");
 deger.value=s;
 }
 </script>

</head>
<body>
 <button type="button" onclick="azalt()">-</button>
 <input type="text" value="0" size="5" id="sayi" name="sayi">
 <button type="button" onclick="artir()">+</button>
</body>
</html>

Bu hatayı sabahta yapmıştım pfffff.
 

Geri
Yukarı