Aklımda bir şey var ama bir türlü yapamadım. Amacım class ı x olan bir checkbox a tıklandığı zaman class ı x olan bütün inputları each fonksiyonuna sokup, eğer o input seçili ise o inputun data-val değerindeki yazının değerini 1, değilse 0 olarak belirlemek ve bunları bir diziye yerleştirmek. Ama önemli olan key => value şeklinde olması. Sonra bunları object yapmak. Aslında each fonksiyonun içinde direkt object e key => value şeklinde depolayabilirse o da olur. En son bunları json formatına dönüştürücem. Ama çıkamadım işin içinden. Boş bir array içerisine push ile atama yapıyorum, daha sonra object e dönüştürünce anahtar değerleri 0,1,2.. Şeklinde geliyor. Şöyle örnek vermek gerekirse.
kodu için aşağıdaki js kodu çalıştığında
$(".x").on("click", function () {
let tercih = [];
$(".x").each(function () {
let a = $(this).data("val");
if ($(this).prop("checked")) {
//o andaki ($(this)) olan inputun data-val değerine 1 atasın
//mesela uc => 1
} else {
//o andaki ($(this)) olan inputun data-val değerine 0 atasın
}
});
// console.log({...tercih});
});
Çıktının şöyle bir şey olmasını istiyorum.
{"bir":1,"iki":0,"uc":1,"dort":1,"bes":0}