【发布时间】:2013-12-31 21:47:46
【问题描述】:
我有一个 JSON 数组和一个带有多个过滤器的搜索表单。在这个搜索表单中,我有 4 个选择下拉字段进行过滤。如何根据用户选择的内容搜索 JSON 数组,然后在他们点击提交按钮后显示结果?
例如,如果用户在“Food Select Drop Down”字段中选择“Burger”,在“Drink Select Drop Down”字段中选择“Coke”。我希望能够显示提供这两种商品的所有餐厅。这可能吗?
var restaurants = [
{"restaurant" : { "name" : "McDonald's", "food" : "burger", "drink" : "coke", "content" : "Lorem ipsum dolor sit amet" }},
{"restaurant" : { "name" : "KFC", "food" : "chicken", "drink" : "pepsi", "content" : "Lorem ipsum dolor sit amet" }},
{"restaurant" : { "name" : "Pizza Hut", "food" : "pizza", "drink" : "sprite", "content" : "Lorem ipsum dolor sit amet" }},
{"restaurant" : { "name" : "Dominos", "food" : "pizza", "drink" : "root beer", "content" : "Lorem ipsum dolor sit amet" }},
{"restaurant" : { "name" : "Popeyes", "food" : "chicken", "drink" : "mist", "content" : "Lorem ipsum dolor sit amet" }}
];
【问题讨论】:
-
您可以遍历您的 JSON 数组并在适当的地方进行条件过滤。你需要一个例子吗?如果是这样,请给我们一个 JSON 数组的示例。您可以直接在帖子中添加此内容。
-
感谢您的快速回复。我编辑了我的帖子并添加了我的 json 数组的示例。
-
由于您没有使用
angular.js,因此我不会将此作为答案,但我建议将其用于这种特殊情况。这是一个现场演示:jsfiddle.net/lacoolj/UACue,文档可以在这里找到:docs.angularjs.org/tutorial/step_03 -
更贴近您的问题,这将适合作为一个非常基本的启动器:jsfiddle.net/lacoolj/2TvLH
标签: javascript jquery arrays json