У меня есть форма, где динамически добавляются поля.
$scope.choices = [{id: 'choice1'}];
$scope.removeChoice = function(z)
{
var lastItem = $scope.choices.length-1;
$scope.choices.splice(z,1);
};
$scope.addNewChoice = function()
{
var newItemNo = $scope.choices.length+1;
$scope.choices.push({'id':'choice'+newItemNo});};
Значения вставляются правильно в файл контроллера при вызове функции вставки. Функция вставки заключается в следующем.
$scope.insert = function()
{
$scope.checklist_name = $scope.values.checklist_name;
$scope.data =[];
$scope.data = $scope.choices;
//alert('companyId=='+$scope.app.company_id);
$scope.item = [];
var newItem = {};
for( var i in $scope.choices)
{
newItem= $scope.choices[i];
$scope.item.push(newItem);
}
console.log( "item",$scope.item);
var fd = new FormData();fd.append('action', APP_ACTION.INSERT_CHECKLIST);
fd.append('company_id', $scope.app.company_id);
fd.append('user_id', $cookieStore.get('userData').id);
fd.append('checkListName',$scope.checklist_name);
fd.append('checkListData',$scope.item);
httpCall.remoteCallPost($scope, $http, fd, function (record)
{
alert('data========'+record.data);
}, function (message)
{
alert('Error');
});
}
Данные в $ scope.item такие
[
0:{id: "choice1", number: "1", shortext: "1", longtext: "1", photo: true},
1:{id: "choice2", number: "2", shortext: "2", longtext: "2"},
2:{id: "choice3", number: "3", shortext: "3", longtext: "3"}
]
И когда я получаю запрос в PHP-бэкэнд, я получил такой массив
Array
(
[action] => insertCheckList
[company_id] => 2
[user_id] => 13
[checkListName] => sadasdsa
[checkListData] => [object Object],[object Object],[object Object]
)
Мой вопрос заключается в том, как получить доступ к данным, поступающим как объект, или я отправляю данные неверным образом, если я отправляю их неверным образом, то как правильно отправить данные правильным способом?
Задача ещё не решена.
Других решений пока нет …