首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用WP REST API在纯Javascript中显示搜索结果?

如何使用WP REST API在纯Javascript中显示搜索结果?
EN

Stack Overflow用户
提问于 2019-05-09 00:25:44
回答 2查看 60关注 0票数 0

我有一个搜索字段,我希望通过从WP REST API的JSON文件中提取数据来生成用户搜索的结果。我需要用普通的javascript来做这件事,我在面向对象的javascript类中工作。你能告诉我设置代码的最好方法吗?

我已经在我的类中调用的方法函数getResults中尝试过了:

代码语言:javascript
复制
getResults() {
    var httpRequest = new XMLHttpRequest()
    httpRequest.onreadystatechange = function (results){
        alert(results.title.rendered);
    }

    httpRequest.open('GET', 'https://website.com/wp-json/wp/v2/pages/');
    httpRequest.send();
}

然而,这给了我一个错误“未捕获的TypeError:无法读取属性‘呈现’的未定义”

我一直在引用这篇文章,它展示了不同事物的JQuery和Plain JS版本。我需要使用普通的JS。https://gist.github.com/joyrexus/7307312

JSON请求的结果应该显示在带有帖子标题列表的页面上。不过,对于这个问题,我只想让标题显示在alert()中。

EN

回答 2

Stack Overflow用户

发布于 2019-05-09 00:56:01

像这样更新你的函数:

代码语言:javascript
复制
function getResults() {
    var httpRequest = new XMLHttpRequest()
    httpRequest.onreadystatechange = function (){
        if (this.readyState == 4 && this.status == 200) {
         obj = JSON.parse(this.responseText);
         alert(obj.title);//if there is a title on your Json response
      }
    }

    httpRequest.open('GET', 'https://website.com/wp-json/wp/v2/pages/');
    httpRequest.send();
}
票数 0
EN

Stack Overflow用户

发布于 2019-05-09 01:00:24

httpRequest.onreadystatechange有一个名为readyState的属性,该属性在每次请求状态更改时设置。您需要等到readyState == 4,然后才能填充结果对象。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56045154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档