Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Динамическая форма (https://javascript.ru/forum/misc/66282-dinamicheskaya-forma.html)

Виталюкас 06.12.2016 00:54

Динамическая форма
 
Доброго времени суток, народ помогите решить задачу.
Есть форма с двумя селектами, после выбора в одном из этих селектов на страницу подгружаются дополнительные чекбоксы для этой формы, так вот проблема в передачи этих чекбоксов, не могу передать эти значения. Читал что надо перезагрузить DOM чтобы значения попaли в DOM

Вот что делал, но без результатно
добавление чекбоксов
$(function(){
	$('#disciplina_specialynost').change(function(e){
		var disciplina_specialynost = $(this).val();
        if (disciplina_specialynost == '0') {
            return(false);
        }
        var url = 'disciplina_select.php';
        $.get(
            url,
            "disciplina_specialynost=" + disciplina_specialynost,
            function (result) {
                if (result.type == 'error') {
                    alert('error');
                    return(false);
                }
                else {
					var p = '', i = 0;
                    $(result.disciplina).each(function() {
					i++	
					p +=	'<p><input class="ievade_2_chek" type="checkbox" name="disciplina[]" value="' + $(this).attr('disciplina_disciplina') + '">' + $(this).attr('disciplina_disciplina') + '</p>';
                    }); 
				$('#info_show').html('<div id="error"></div>' + p);					
                }
            },
            "json"
        );

	});
});


вот пробовал так отправлять
$(function(){
    $('#prepod_form').submit(function(e){
        e.preventDefault();
        $.ajax({
            type: 'post',
            url: 'save_prepod_naznachenie.php',
            data: $(this).serialize(),
            success: function(data){
                $('#error').html(data);
            }    
        });
    });
});

оправляет только поля которые были до чекбоксов
пробовал также вот так
$(function(){

    $('#submit').submit(function(){
		$.each('#prepod_form', function(){
		e.preventDefault();
		 
		
      $.ajax({
        type: 'post',
			url: 'save_prepod_naznachenie.php',
			data: $(this).serialize(),
        success: function (data) {
         $('#error').html(data);
        }
      });
      return false;
    });	
  });
  
});


тоже не работает,
в JS не селён так что не пинайте сильно

Виталюкас 06.12.2016 02:08

вот еще вариантик, в консоли выводит все значения, а в файл передает только 1
$(document).ready(function(){
  $('#submit').bind('click', function(){
    $("#prepod_form").bind('submit', function(){
      var chek = $('.ievade_2_chek').val();
      console.log($('.ievade_2_chek'));  
      $.ajax({
        type: 'post',
			url: 'save_prepod_naznachenie.php',
			data: {id:chek},
        success: function (data) {
         $('#error').html(data);
        }
      });
      return false;
    });
  });
});


неужели некто незнает

Виталюкас 06.12.2016 17:29

Народ Вы где?
Неужели нет ни одного кто может подсказать как сделать

Виталюкас 06.12.2016 17:34

$(document).ready(function(){
    $('#submit_data').click(function(){
console.log($('.ievade_2_chek')); 
    var answers = [];
    $.each($('.ievade_2_chek'), function() {
		if ($(".ievade_2_chek").is(":checked")) {
			answers.push($(this).val());
		}
        
    });

    if(answers.length == 0) {
        answers = "none";
    }   

    $.ajax({
		type: 'post',
		url: 'save_prepod_naznachenie.php',
		data: {id:answers},
        success: function (data) {
         $('#error').html(data);
        }
      });

    return false;

    });

});


Так передаёт все значения не зависемо отмечен чекбокс или нет


Часовой пояс GMT +3, время: 02:53.