nikolaymac,
Поясняйте - где массив - на сервере или на клиенте ? |
я же выложил полный код
<script> $(document).ready(function(){ var t = $('div.inputs input').size(); $('#add').click(function() { $('<div><input type="text" class="field" name="dynamic[]" /> <input type="text" class="field" name="dynamic[]" /></div>').fadeIn('slow').appendTo('.inputs'); t++; if(t==6){ $('#add').hide() } }); $('#remove').click(function() { if(t > 1) { $('.field:last').remove(); $('.field:last').remove(); t--; $('#add').show() } }); $('#reset').click(function() { while(t > 2) { $('.field:last').remove(); $('.field:last').remove(); t--; $('#add').show() } }); // here's our click function for when the forms submitted $('.submit').click(function(){ var answers = []; $.each($('.field'), function() { answers.push($(this).val()); }); // Отсылаем паметры $.ajax({ type: "POST", url: "new.php", data: "data="+answers, // Выводим то что вернул PHP success: function(html) { //предварительно очищаем нужный элемент страницы $("#result").empty(); //и выводим ответ php скрипта $("#result").append(html); } }); return false; }); }); </script> <div id="container"> <div class="dynamic-form"> <a href="#" id="add">Добавить</a> | <a href="#" id="remove">Удалить</a> | <a href="#" id="reset">Сбросить</a> <form> <div class="inputs"> <div><input type="text" name="dynamic[]" class="field" > <input type="text" name="dynamic[]" class="field" ></div> </div> <input name="submit" type="button" class="submit" value="ОК"> </form> <div id="result"></div> </div> |
в итоге хочу получить две переменные типа input1 = "значение" input2 = "значение"
и снова input1 = "значение" input2 = "значение" это следующий динамический блок input |
Ну вместо этого:
40 $('.submit').click(function(){ 41 42 var answers = []; 43 $.each($('.field'), function() { 44 answers.push($(this).val()); 45 46 }); 47 48 49 50 // Отсылаем паметры 51 $.ajax({ 52 type: "POST", 53 url: "new.php", 54 data: "data="+answers, 55 // Выводим то что вернул PHP 56 success: function(html) { 57 //предварительно очищаем нужный элемент страницы 58 $("#result").empty(); 59 //и выводим ответ php скрипта 60 $("#result").append(html); 61 } 62 63 }); Наверно так var outData=''; $('.submit').click(function(){ outData = $(this).parents('form').serialize(); if(!outData) return; // Oтcылaeм пaмeтpы $.ajax({ type: "POST", url: "new.php", data: "data="+outData, // Bывoдим тo чтo вepнyл PHP success: function(html) { //пpeдвapитeльнo oчищaeм нyжный элeмeнт cтpaни $("#result").empty(); //и вывoдим oтвeт php cкpиптa $("#result").append(html); } });return false; }); |
Цитата:
|
спасайте !
|
Цитата:
<form> <div class="inputs"> <div><input type="text" name="dynamic1" class="field" > <input type="text" name="dynamic1" class="field" ><br> <input type="text" name="dynamic2" class="field" ><br> <input type="text" name="dynamic3" class="field" ><br> </div> <input type="button" class="submit" value="ОК"> </form> |
Дак вот именно что нельзя указывать dynamic1 2 3 так как формы создаются динамически ! тоесть может быть потом и dynamic 9 10 11
|
Цитата:
Проверьте воспроизводимость полученных данных из статического варианта... Не надо пробовать всё и всё сразу |
<body> <form> <div> <form> <input type="text" name="a" value="1" id="a" /> <input type="text" name="b" value="2" id="b" /> </form> </div> <input type="button" class="submit" value="ОК"> </form> <div id="result"></div> </body></html> <script> $(document).ready(function(){ $('.submit').click(function(){ var s = $('form').serialize(); // Отсылаем паметры $.ajax({ type: "POST", url: "new.php", data: "data="+s, // Выводим то что вернул PHP success: function(html) { //предварительно очищаем нужный элемент страницы $("#result").empty(); //и выводим ответ php скрипта $("#result").append(html); } }); return false; }); }); </script> принемаю так <? $data=$_POST[data]; var_dump($data); выдает только первый string(11) "a=sss....значение" |
Часовой пояс GMT +3, время: 16:22. |