У меня проблема с печатью в таблице, некоторые JSON, которые находятся на сервере. Это мой JSON
process([ { "name": "A", "value": "41" }, { "name": "B", "value": "71" }, { "name": "C", "value": "20" }],"2017.07.11 15:48:33");
Мой контроллер:
myApp.controller('liveTable', function ($scope, $http) { $http.get('http://something.com/get.php?jsonp=2017') .then(function (response) { $scope.myData= response.data; console.log(response.data); });
И это мой HTML
<div class="liveTable" ng-controller="liveTable"> <table> <tr ng-repeat="item in myData.process"> <td>{{item.name}}</td> <td>{{item.value}}</td> </tr> </table> </div>
Подумайте, где я ошибаюсь? Тпх
Пытаться:
app.service("dangerousAPI", function($q) { this.get = get; function get(funcName, url) { var dataDefer = $q.defer(); window[funcName] = function(x) { dataDefer.resolve(x); } var tag = document.createElement("script"); tag.src = url; document.getElementsByTagName("head")[0].appendChild(tag); return dataDefer.promise; } })
dangerousAPI.get('process',url).then(function(data) { $scope.myData= data; console.log(data); })
Для получения дополнительной информации см. « Не юридический API JSONP»
когда я помещаю
{{myData}}
, я завершаю jsonp,
Я рад, что вы смогли получить данные с этим ответом. Он показывает, что сервер не возвращает законный JSON. Сервер должен быть установлен для возврата либо законного JSON, либо юридического JSONP .
Чтобы сервер отвечал на допустимый массив JSONP , оберните JSON в скобках () и добавьте обратный вызов:
echo $_GET['callback']."([{'fullname' : 'Jeff Hansen'}])"; Using json_encode() will convert a native PHP array into JSON: $array = array( 'fullname' => 'Jeff Hansen', 'address' => 'somewhere no.3' ); echo $_GET['callback']."(".json_encode($array).")";
Для получения дополнительной информации см. Пример простого PHP и JSONP
Я думаю, что что-то не так с вашими данными json.
я могу видеть, изменив данные json. вы можете посмотреть на него.
<!DOCTYPE html> <html> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular-route.js"></script> <body> <div ng-app="myapp"> <div class="liveTable" ng-controller="myctrl"> <table> <tr ng-repeat="item in process"> <td>{{item.name}}</td> <td>{{item.value}}</td> </tr> </table> </div> </div> </div> <script> angular.module("myapp",[]).controller("myctrl", function($scope){ $scope.process = ([ { "name": "A", "value": "41" }, { "name": "B", "value": "71" }, { "name": "C", "value": "20" }]); }); </script> </body> </html>