• 22-01-2023, 06:05:05
    #1
    Herkese merhaba, şu şekilde bir yapım var.



    Radio Butonlar aynı name değerin sahip, Yeni Cevap butonu ile istenildiği kadar cevap bölümü oluşturuluyor ve birisi doğru cevap seçiliyor.

    let answer = [];
    $('#answer .form-group').map(function (i,val) {
        if ($(val).find('.answer').val().length > 0)
            answer.push({
                name:$(val).find('.answer').val(),
                trueAnswer:$(val).find('.trueAnswer').val()
        });
    });
    
    let categoryID = $('#category').val();
    let question = $('#question').val();
    let questionNo = $('#questionNo').val();
    let colorpicker = $('#colorpicker').val();
    
    let formData = new FormData();
    formData.append("categoryID", categoryID);
    formData.append("question", question);
    formData.append("questionNo", questionNo);
    formData.append("colorpicker", colorpicker);
    
    for (var i = 0; i < answer.length; i++) {
        formData.append('answer'+[i] , answer[i].name);
      }
    Formdan gelen verileri bu şekilde formData'ya ekliyorum.

    Sorun;
    Radio Buton için value değerim yok, default olarak 0 versem her butona tıklandığında 1-2-3 gibi arttırsam 4. değer eklendikten sonra 2. silinirse patlıyor.
    Bu sorunu nasıl çözebilirim?
  • 22-01-2023, 06:35:06
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    https://codepen.io/ buraya attin hocam canlida cozelim
    ,
    muhtemelen, $('button').on('click', function(){ yapisini $(document).on('click', 'button', function(){ ile degistirmeniz gerek
  • 22-01-2023, 06:46:08
    #3
    kisu01r adlı üyeden alıntı: mesajı görüntüle
    https://codepen.io/ buraya attin hocam canlida cozelim
    ,
    muhtemelen, $('button').on('click', function(){ yapisini $(document).on('click', 'button', function(){ ile degistirmeniz gerek
    https://codepen.io/mehmetmasa-the-selector/pen/RwBQbOr

    yükledim hocam, en sona formdata'yı console'a basan kodda ekledim form'u gönderdikten sonra gelen verileri console'da görebilirsiniz.

    Sorun "Yeni cevap" butonuna tıklandıkça yeni element ekleniyor. Eklenen elementlerden birisi "doğru cevap" olarak seçilmeli.
    Her element eklendiğinde 0-1-2 şeklinde value versem kullanıcı 4 element ekleyip sonra 2. yi silebilir. Bu durumda value değerleri stabil çalışmayacaktır.
    Henüz mantıklı bir çözüm bulamadım.
  • 22-01-2023, 07:50:35
    #4
    kisu01r adlı üyeden alıntı: mesajı görüntüle
    https://codepen.io/ buraya attin hocam canlida cozelim
    ,
    muhtemelen, $('button').on('click', function(){ yapisini $(document).on('click', 'button', function(){ ile degistirmeniz gerek
    Çözdüm hocam

    function selectAnswer($i) {
        return $('#answer div label').find('input')[$i].checked;
    }
    for (var i = 0; i < answer.length; i++) {
        formData.append('answer'+[i] , answer[i].name);
        formData.append('trueAnswer'+[i] , selectAnswer(i));
    }