Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Форма с динамическим кол-вом полей POST (https://javascript.ru/forum/misc/35370-forma-s-dinamicheskim-kol-vom-polejj-post.html)

Proxytel 08.02.2013 22:56

Форма с динамическим кол-вом полей POST
 
Приветствую!

Создал такую форму, в которой с помощью jQuery можно произвольно наращивать и удалять кол-во <textarea> элементов.
<script type="text/javascript" src="http://www.sheertube.com/stp/js/jquery/jquery.js"></script>
<script>
$(document).ready(function(){
    taI = 1;
    function addTextAreaBlock() {
		$('<div><textarea name="ta' + i + '"></textarea><a href="#" onClick="javascript:removeTexAreaBlock(' + i + ');">Delete</a></div>').fadeIn('slow').appendTo('.textareas');
		taI++;
    }
    $('#add').click(function() {
		addTextAreaBlock()
    });
});

function removeTexAreaBlock(N) {
	$(document).ready(function(){
		$('textarea[name=ta' + N + ']').parent().remove();
	});
}
</script>

<a href="#" id="add">Add</a>
<form action="index.php" method="post">
<div class="textareas">
<div><textarea name="ta1">1</textarea></div>
</div>
<input name="submit" type="submit" class="submit" value="ОК">
</form>



Теперь как-то это дело надо передать POST запросом, что вроде бы как тоже не сложно.. Но вот как такой запрос принять на том конце, ведь переменные буду с произвольным индексом name=ta1, name=ta3, name=ta321, ...?!! Есть идея только перед отправкой обьёденить все значения textarea в массив, но как передавать массив через POST?

Вобщем, что скажете, как лучше поступить?

Deff 09.02.2013 00:28

Proxytel,
Добавьте все техтареа в один, добавив перед вставкой последующего два десятка переводов строк
От обработки Итога PHP cкриптом - Вам не деться

dmitriymar 09.02.2013 00:40

Цитата:

Сообщение от Proxytel
но как передавать массив через POST?

json

danik.js 09.02.2013 19:21

Цитата:

Сообщение от Proxytel
Но вот как такой запрос принять на том конце, ведь переменные буду с произвольным индексом name=ta1, name=ta3, name=ta321

Делать одинаковые имена: ta[], ta[]
PHP отлично понимает такие "массивы".

var_dump( $_POST['ta'] );


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