Т.к. я больше программирую в PHP буду объяснять терминами этого языка.
JS (jquery) должен сформировать по сути двухмерный ассоциированный массив, но ключи массива д.б. числовыми.
Пример: array(3=>array(2), 4=>array(2,3)));
Пример формирования подобного массива:
var param = new Array(); $(".construct_field").each(function () { var value = new Array(); $(this).children(":selected").each(function () { value.push($(this).val()); }); param[$(this).attr('id')] = value; });
Сформировав подобный массив, его нужно передать в качестве параметра AJAX-запросу в PHP:
В тестовых целях script.php возвращает var_dump($_POST['data']);
И тут я вижу следующее: array(5) { [0]=> string(15) "[object Window]" [1]=> string(15) "[object Window]" [2]=> string(15) "[object Window]" [3]=> string(1) "2" [4]=> string(3) "2,3" }
Объяснил подробно. Теперь вопрос:
1. Если внимательно посмотреть, то вложенные массивы передаются строкой (пример: [4]=> string(3) "2,3" ). Можно ли еще в JS так сформировать данные, что бы получить, то что изначально требовалось: "4=>array(2,3)"?
2. Но важнее ответ на следующий вопрос. Как видно из примера в PHP попадает не чистый массив с т.з. самого PHP. Его придется фильтровать, что бы избавится от подобных значений: "object Window". а это не cool способ. Хочется, что бы в PHP попадал уже "чистый" массив (типа array(3=>array(2), 4=>array(2,3))));
P.S. мои знания в JS не Ах!, поэтому допускаю, что формировать данные нужно как-то подругому. Прошу помочь.
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
Здравствуйте, подскажите какой тег использовать для увеличения значения, пример на картинке.
Вроде, про такой тег я слышала. Если есть тег прогресс бар, значит и такое должно быть.
Question
Bolmazov
Т.к. я больше программирую в PHP буду объяснять терминами этого языка.
JS (jquery) должен сформировать по сути двухмерный ассоциированный массив, но ключи массива д.б. числовыми.
Пример: array(3=>array(2), 4=>array(2,3)));
Пример формирования подобного массива:
Сформировав подобный массив, его нужно передать в качестве параметра AJAX-запросу в PHP:
Пример: $.post("script.php", {'data[]': param}, function(data){ node.after(data); }, "html");
В тестовых целях script.php возвращает var_dump($_POST['data']);
И тут я вижу следующее: array(5) { [0]=> string(15) "[object Window]" [1]=> string(15) "[object Window]" [2]=> string(15) "[object Window]" [3]=> string(1) "2" [4]=> string(3) "2,3" }
Объяснил подробно. Теперь вопрос:
1. Если внимательно посмотреть, то вложенные массивы передаются строкой (пример: [4]=> string(3) "2,3" ). Можно ли еще в JS так сформировать данные, что бы получить, то что изначально требовалось: "4=>array(2,3)"?
2. Но важнее ответ на следующий вопрос. Как видно из примера в PHP попадает не чистый массив с т.з. самого PHP. Его придется фильтровать, что бы избавится от подобных значений: "object Window". а это не cool способ. Хочется, что бы в PHP попадал уже "чистый" массив (типа array(3=>array(2), 4=>array(2,3))));
P.S. мои знания в JS не Ах!, поэтому допускаю, что формировать данные нужно как-то подругому. Прошу помочь.
Link to comment
Share on other sites
15 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.