2014-11-03 1 views
0

У меня есть массив, который я отправляю с ajax на контроллер, чтобы сделать некоторые действия над ним. Это выглядит следующим образом:Как разбирать массив после строки в json-запросе

JQuery:

var url = window.location.pathname.split('/'); 

segments = []; 
segments.push(url[3], url[4], url[5]); 

$.ajax({ 
    'data': { array : JSON.stringify(segments) }, 
}); 

А потом, когда я получаю его в мой контроллер, у меня есть массивс 1 элементом: ключ - "сегменты" и значение со всеми значениями сегментов массива.

Что можно сделать для разбора массива с 1 элементом в новый массив с несколькими элементами.

Спасибо за внимание и помощь

+0

Можете ли вы переформулировать свой вопрос? Вы хотите сделать что-то вроде 'segment = {part3: url [3], part4: url [4], part5: url [5]};'? – EvilZebra

+0

Evilzebra, если я что-то делаю, как вы предлагаете, тогда у меня будет объект вместо массива. Итак, как я могу преобразовать его в массив? – lalexa

+0

Какой сервер вы используете? PHP? ASP.Net? –

ответ

2

Как в моем понимании решение следующим образом:

Html файл sample.html

<html> 
    <head> 
     <title>Smaple</title> 
     <meta charset="UTF-8"> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
     <script type="text/javascript" src="jquery-1.9.1.min.js"></script> 
     <script> 
      var url = window.location.pathname.split('/'); 

      segments = []; 
      segments.push(url[3], url[4], url[5]); 
      console.log(segments); 
      console.log(JSON.stringify(segments)); 
      $.ajax({ 
       type: "POST", 
       url: "sample.php", 
       'data': { 'segments' : JSON.stringify(segments) }, 
       success: function() { 

      }}); 

     </script> 
    </head> 
    <body> 
     <div>TODO write content</div> 
    </body> 
</html> 

И PHP файл sample.php

<?php 
$segments = json_decode($_POST['segments']); 
print_r($segments); 
exit; 
?> 
Смежные вопросы