lostyazilim
tr.link

Checkbox id'ye göre Post İşlemi - Yardım Lütfen

3 Mesajlar 775 Okunma
acebozum
tr.link

anesteziker anesteziker WM Aracı Kullanıcı
  • Üyelik 20.09.2016
  • Yaş/Cinsiyet 40 / E
  • Meslek sağlık
  • Konum Ankara
  • Ad Soyad U** K**
  • Mesajlar 45
  • Beğeniler 4 / 4
  • Ticaret 0, (%0)

Merhaba iki adet checkbox var. Bunlar birbirinin aynı yapıda sadece id değerleri farklı, aşağıdaki kodu yazdığımda sadece ilk checkbox'ı çalıştırıyorum ama ikinci checkbox çalıştığında istediğim değerleri post etmiyor. Yardımcı olursanız sevinirim.

 

 

  <label class="switch">

    <input name="motor" class="motor" id="1" type="checkbox">

    <span class="slider"></span>

  </label>

 

 

  <label class="switch">

    <input name="motor" class="motor" id="2" type="checkbox">

    <span class="slider"></span>

  </label>

 

 

 

  <script type="text/javascript">

    var checkbox = document.querySelector('.motor');

 

    checkbox.addEventListener('change', function() {

      if (this.checked) {

 

        var durum = "1";

        var id = checkbox.getAttribute("id");  

 

        $.ajax({

          type: 'POST',

          url: 'gonder.php', 

          data: { durum: durum, id: id}, 

        });

 

      } else {

 

        var durum = "0";

        var id = checkbox.getAttribute("id");  

 

        $.ajax({

          type: 'POST',

          url: 'gonder.php', 

          data: { durum: durum, id: id }, 

 

        });

      }

    });

  </script>

 

 

elektronikssl
webimgo

anesteziker anesteziker WM Aracı Kullanıcı
  • Üyelik 20.09.2016
  • Yaş/Cinsiyet 40 / E
  • Meslek sağlık
  • Konum Ankara
  • Ad Soyad U** K**
  • Mesajlar 45
  • Beğeniler 4 / 4
  • Ticaret 0, (%0)

Çözümü buldum. For döngüsü ile checkboxların id seçimi ile işlem yapmasını sağladım. 

 

  <script type="text/javascript">

    const checkbox = document.getElementsByClassName("motor");

 

for (var i = 0; i < checkbox.length; i++) {

 

      checkbox[i].addEventListener('change', function(e) {

        if (this.checked) {

 

          let durum = "1";

          let id;

 

          id = e.target.id;

 

          $.ajax({

            type: 'POST',

            url: 'gonder.php', 

            data: { durum: durum, id: id}, 

          });

 

        } else {

 

          let durum = "0";

          let id = this.id;

 

          $.ajax({

            type: 'POST',

            url: 'gonder.php', 

            data: { durum: durum, id: id }, 

 

          });

        }

 

      });

}

  </script>

 

 

iyovi iyovi WE ❤️ PHP Kullanıcı
  • Üyelik 26.09.2021
  • Yaş/Cinsiyet 31 / E
  • Meslek PHP Yazılım Geliştirici
  • Konum İstanbul Anadolu
  • Ad Soyad O** Y**
  • Mesajlar 45
  • Beğeniler 22 / 22
  • Ticaret 2, (%100)

anesteziker adlı üyeden alıntı

Çözümü buldum. For döngüsü ile checkboxların id seçimi ile işlem yapmasını sağladım. 

 

  <script type="text/javascript">

    const checkbox = document.getElementsByClassName("motor");

 

for (var i = 0; i < checkbox.length; i++) {

 

      checkbox[i].addEventListener('change', function(e) {

        if (this.checked) {

 

          let durum = "1";

          let id;

 

          id = e.target.id;

 

          $.ajax({

            type: 'POST',

            url: 'gonder.php', 

            data: { durum: durum, id: id}, 

          });

 

        } else {

 

          let durum = "0";

          let id = this.id;

 

          $.ajax({

            type: 'POST',

            url: 'gonder.php', 

            data: { durum: durum, id: id }, 

 

          });

        }

 

      });

}

  </script>

 Yalnız bu şekilde bir kodlama sistemi yorar mantığın doğru ama sıkıntılı bilgin olsun.

 

 

Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al