• 07-07-2021, 01:58:54
    #1
    Öncelikle iyi forumlar,

    Bir sayfada bir çok checkbox elemanı mevcut. Kullanıcının seçimine göre ders saati ve ders ücreti otomatik olarak 2 inputa yazılıyor. Bu 2 inputa otomatik yazılan bu değerleri çarparak başka bir inputa yazdırmak istiyorum. Bu şekilde bir kod var elimde ancak otomatik girilen değerleri çarpmıyor. sadece el ile inputa bir şey yazarsam sonucu inputa yazıyor;

    $("#kurs-saat,#ders-ucret").keyup(function () {
    $('#saatxucret').val($('#kurs-saat').val() * $('#ders-ucret').val());
    });
    Bunlarda input elemanları;

    [text* kurs-saati  id:kurs-saat  "1" ]
    [text* ders-ucreti id:ders-ucret "1" ]
    [text* saat-ucret  id:saatxucret "1" ]
    Nasıl bir çözüm üretmem gerek. Galiba .keyup kısmı inputa değer yazılmasını algılıyor.
  • 07-07-2021, 21:51:44
    #2
    Kolay gelsin 3 input varsa bu şekil çarpmaz hocam atlama yapar döngüye alıp çarpmanız lazım.
  • 07-07-2021, 21:57:20
    #3
    CodeDev adlı üyeden alıntı: mesajı görüntüle
    Kolay gelsin 3 input varsa bu şekil çarpmaz hocam atlama yapar döngüye alıp çarpmanız lazım.
    Küçük bir kod örneği atabilir misiniz? Bir kaç gündür araştırma yapıyorum ama hala sonuç alamadım.
  • 07-07-2021, 22:27:52
    #4
    <input class="ClassName" type="text" id="id1" />
    <input class="ClassName" type="text" id="id2" />
    <input class="total" type="text"  />
    $(function(){
        $('.ClassName').keyup(function(){
            let  total = 0;
            const a = $("#id1").val();
            const b = $("#id2").val();
            total = (a*b);
            $(".total").val(total);     
        })
    })
    Buyur hocam en basit haliyle bu şekilde yapabilirsiniz, bu arada ben sorunuzu yanlış anlamışım 3 inputu birbiri ile çarpıp 4. inputa sonuçu yazdıracaksınız sandım, 3. bir input daha eklemek isterseniz bu kod çalışmaz bilginiz olsun
  • 07-07-2021, 22:42:40
    #5
    Hocam, ben inputa bir şey yazarsam sonucu doğru bir şekilde çarpıp inputa yazıyor. Güzel ama #id1 ve #id2 inputuna veri otomatik giriliyor. Bu yüzden sonucu alamıyorum.





    Bu şekilde veriyi inputlara yazdırıyoruz.

     // Checkbox'a tıklanırsa çalışıcak.
              $('.fucret').change(function() {
                if ($('.fucret input').is(':checked')) {
                    $('#id1').attr('value', '14');
                    $('#id2').attr('value', '72');
                } else {
                    $('#id1').attr('value', '');
                    $('#id2').attr('value', '');
                    
                }
            });
        });
  • 07-07-2021, 22:47:15
    #6
    Sorunuz yanlış hocam öyle bir durum varsa keyup kullanmanızda yanlış , O halde veriler nereden geliyorsa getirdiğiniz kod bloğunda çarpıp o şekilde ekrana basacaksınız. Yukarda bıraktığınız kodda yanlış value ye Attribute niteliği ile tanımlama yaptığınız için değişkene aktarsanız dahi geriye ilgili dom'un tüm niteliğini Obj olarak döndürür. illede böyle yapacam kafaya koydum diyorsanız
    geriye dönen Obj'lerden defaultValue anahtarını seçin inpututlara tanımladığınız değeri dönderir çarpıp ekrana bastırın bukadar, kolay gelsin
  • 08-07-2021, 00:00:11
    #7
    Desteğiniz için çok teşekkürler.