【问题标题】:AJAX request, filtered JSON response html/javascriptAJAX 请求,过滤后的 JSON 响应 html/javascript
【发布时间】:2014-02-13 22:15:22
【问题描述】:

当我从我的 node.js 服务器请求包含人员信息(名字、姓氏)的 .json 时,我想根据用户输入的内容过滤该数据。

示例:我从服务器请求 .json,这给了我一个人员列表,但是当我开始输入文本“表单”时,列表会被过滤以匹配我输入的内容。

我对此有一些问题,首先,如何将这个 .json 显示为列表?到目前为止,我是这样显示的:

var parsed = JSON.parse(xmlHttp.responseText);
var html = '';
for (var i = 0; i < parsed.length; i++) {
    html += '<div>' + parsed[i] + '</div>';
}
document.getElementById("myDiv").innerHTML = html;
}

.json 示例

 "firstName": "John",
 "lastName": "Doe",

我确定我可以管理过滤,只需要使用列表推送!

感谢“Zub”帮助我完成请求

【问题讨论】:

  • 对于列表的人,最好使用ul或ol而不是div。

标签: javascript html json node.js


【解决方案1】:

目前你正在输出objects,你需要输出这些对象的属性:

var parsed = JSON.parse(xmlHttp.responseText);
var html = '';
for (var i = 0; i < parsed.length; i++) {
    html += '<div>' + parsed[i].firstName + '-' + parsed[i].lastName + '</div>';
}
document.getElementById("myDiv").innerHTML = html;
}

至于过滤,您需要为要过滤的输入附加一个事件(例如 onkeypress)。在处理程序中,您应该清除 html,再次运行原始列表,但放入一个仅在与您的查询匹配时才添加到 html 的条件。我会留给你的

【讨论】:

  • 非常感谢!我会调查这个
猜你喜欢
  • 1970-01-01
  • 2016-07-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多