• 16-02-2023, 04:02:56
    #1
    Selamlar, aşağıda ki gibi bir kodum var koddan anlayacağınız üzere field 5 ve 8 de herhangi bir değişiklik olduğunda myFunction ı çağırmak istiyorum 8 de değişiklik olunca sıkıntı yok ama 5 de olunca okumuyor sebebi de muhtemelen arka arkaya yazdığım için en son olanı baz alıyor olması. Yapmak istediğim işlemde ki syntaxı hatasını düzeltebilecek var mı çalışır şekilde?

    document.getElementById("wpforms-2443-field_5").addEventListener("change", myFunction);
    document.getElementById("wpforms-2443-field_8").addEventListener("change", myFunction);
    function myFunction() {
                var boy=document.getElementById("wpforms-2443-field_5").value;
                var kilo=document.getElementById("wpforms-2443-field_8").value;
                var b = Number(boy);
                var k = Number(kilo);
                var ind = k / (b*b);
                document.getElementById("wpforms-2443-field_9").value = ind;
      alert("VKI: " + ind + " Boy: " + b + " Kilo: " + kilo );
    
    }
  • 16-02-2023, 07:41:24
    #2
    Serdenci adlı üyeden alıntı: mesajı görüntüle
    Selamlar, aşağıda ki gibi bir kodum var koddan anlayacağınız üzere field 5 ve 8 de herhangi bir değişiklik olduğunda myFunction ı çağırmak istiyorum 8 de değişiklik olunca sıkıntı yok ama 5 de olunca okumuyor sebebi de muhtemelen arka arkaya yazdığım için en son olanı baz alıyor olması. Yapmak istediğim işlemde ki syntaxı hatasını düzeltebilecek var mı çalışır şekilde?

    document.getElementById("wpforms-2443-field_5").addEventListener("change", myFunction);
    document.getElementById("wpforms-2443-field_8").addEventListener("change", myFunction);
    function myFunction() {
                var boy=document.getElementById("wpforms-2443-field_5").value;
                var kilo=document.getElementById("wpforms-2443-field_8").value;
                var b = Number(boy);
                var k = Number(kilo);
                var ind = k / (b*b);
                document.getElementById("wpforms-2443-field_9").value = ind;
      alert("VKI: " + ind + " Boy: " + b + " Kilo: " + kilo );
    
    }
    Gördüğüm, javascript kodunda bir sıkıntı yok. Test ettiğimde ikisinde de onchange eventi sorunsuz şekilde çalışıyor:

    <p>Boy: <input id="wpforms-2443-field_5"></p>
    <p>Kilo: <input id="wpforms-2443-field_8"></p>
    <p>Vücut Kitle indexi: <input id="wpforms-2443-field_9"></p>
    
    <script>
    
    document.getElementById("wpforms-2443-field_5").addEventListener("change", myFunction);
    document.getElementById("wpforms-2443-field_8").addEventListener("change", myFunction);
    
    function myFunction() {
    var boy=document.getElementById("wpforms-2443-field_5").value;
    var kilo=document.getElementById("wpforms-2443-field_8").value;
    
    var b = Number(boy);
    var k = Number(kilo);
    
    var ind = k / (b*b);
    document.getElementById("wpforms-2443-field_9").value = ind;
    alert("VKI: " + ind + " Boy: " + b + " Kilo: " + kilo );
    
    }
    
    </script>
    boy değişkeninin okumaya çalıştığı idle input #1 in idinin AYNI olduğundan ya da çağrılan scriptin kodlamada input #1'den sonra geldiğinden ya da kodlamanızda wpforms-2443-field_5 idini taşıyan başka bir element bulunmadığından emin olun. Yine düzelmezse modzilla'nın Denetle seçeneğinden Konsol sekmesini açın ve kırmızı renkle yazılmış bir hata satırı varsa hatanın ne olduğunu inceleyin ve buraya kopyalayın.
  • 16-02-2023, 08:15:15
    #3
    value kısmını dışarıdan parametre ile göndermelisiniz
  • 16-02-2023, 12:29:25
    #4
    WPForms da boy kısmına mask ekleyince change i algılamıyor çok garip şu an fark ettim
  • 16-02-2023, 13:24:30
    #5
    Sorunu buldum mask ekleyince veri tipi değişiyor