Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在angularjs应用程序中解析Drupal JSON数据_Javascript_Angularjs_Json_Drupal_Drupal 7 - Fatal编程技术网

Javascript 如何在angularjs应用程序中解析Drupal JSON数据

Javascript 如何在angularjs应用程序中解析Drupal JSON数据,javascript,angularjs,json,drupal,drupal-7,Javascript,Angularjs,Json,Drupal,Drupal 7,我从DrupalRESTAPI获得了以下JSON响应。如何在我的移动应用程序AngularJs http服务中解析它 [ { “nid”:“2”, “名称”:“名称”, “现场事件列表”:“测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件摘要1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.”, “活动日期”:“2016年5月20日星期五至2016年5月31日星期二”

我从DrupalRESTAPI获得了以下JSON响应。如何在我的移动应用程序AngularJs http服务中解析它

[
{  
“nid”:“2”,
“名称”:“名称”,
“现场事件列表”:“测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件摘要1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.”,
“活动日期”:“2016年5月20日星期五至2016年5月31日星期二”
}
]
例如

控制器

app.controller('MyCtrlr', function ($scope, $http) {


                      $http.get("YOUR_DRUPAL_API").success(function(response){

                         //Store your JSON Response
                                 $scope.jsonResp = [  
                                                   {  
                                                      "nid":"2",
                                                      "title":"<a href=\"/sell/test-event-1\">Test Event 1</a>",
                                                      "field_event_list":"List of Test Event 1 . List of Test Event 1 . List of Test Event 1 . List of Test Event 1 . List of Test Event 1 . List of Test Event 1 . Summery of Test Event 1 . List of Test Event 1 . List of Test Event 1 . List of Test Event 1 . List of Test Event 1 . ",
                                                      "event_date":"<div class=\"date-display-range\"><span class=\"date-display-start\" property=\"dc:date\" datatype=\"xsd:dateTime\" content=\"2016-05-20T00:00:00+05:30\">Friday, May 20, 2016</span> to <span class=\"date-display-end\" property=\"dc:date\" datatype=\"xsd:dateTime\" content=\"2016-05-31T00:00:00+05:30\">Tuesday, May 31, 2016</span></div>"
                                                   }
                                                ];

                       });

 });

//AngularJS filter to strip HTML tags from your JSON properties

app.filter('getPlaintext', function() {
    return function(text) {
      return  text ? String(text).replace(/<[^>]+>/gm, '') : '';
   }
  });
app.controller('MyCtrlr',函数($scope,$http){
$http.get(“您的DRUPAL\uAPI”).success(函数(响应){
//存储JSON响应
$scope.jsonResp=[
{  
“nid”:“2”,
“名称”:“名称”,
“现场事件列表”:“测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件摘要1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.测试事件列表1.”,
“活动日期”:“2016年5月20日星期五至2016年5月31日星期二”
}
];
});
});
//AngularJS过滤器从JSON属性中去除HTML标记
app.filter('getPlaintext',函数(){
返回函数(文本){
返回文本?字符串(文本)。替换(/]+>/gm',):'';
}
});
查看

<table ng-controller="MyCtrlr">
                <tr>
                  <td>nid</td>
                  <td>title</td>
                  <td>field_event_list</td>
                  <td>event_date</td>
                </tr>

                <tr ng-repeat="data in jsonResp">

                                <td>{{data.nid}}
                                </td>
                                <td>{{data.title | getPlaintext}}</td>

                                <td>{{data.field_event_list | getPlaintext}} 
                                </td>
                                <td>{{data.event_date | getPlaintext}}
                                </td>

                            </tr>

</table>

奈德
标题
字段\事件\列表
活动日期
{{data.nid}
{{data.title}getPlaintext}
{{data.field_event_list|getPlaintext}
{{data.event_date|getPlaintext}

请参见

,但我关心的是,它包括0、p标签等,我的移动应用程序中已经有了这些标签。我只需要显示数据。这是正确的方法吗?使用原生的
JSON。解析
并没有让你明白!你能举几个例子吗?对不起,我是个新手@史密萨:您希望以2016年5月31日(星期二)的形式获取
事件日期
,或者使用
HTML
?无HTML。我不需要HTML!所以我问Drupal的响应是否不正确?我应该请Drupal dev为我提供正确的JSON?谢谢!如何使用简单的json或文本文件在本地(我有nodejs服务器)测试相同的内容?@Smitha没有使用
node.js
。需要检查是的。比如说,我想测试$http请求响应和应用程序逻辑。。但对于这一点,我的服务器还没有准备好RESTAPI。但我有本地JSON数据。检验it@Smitha请看这里的小提琴进行测试,我刚刚将您的
JSON
分配给了一个变量。您可以看到,
$http
AJAX调用已被注释。类似的方法将整个
JSON
分配给一个变量并进行相应的解析。谢谢!那有帮助!