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, время: 06:45. |