【发布时间】:2017-07-14 00:59:14
【问题描述】:
我创建了脚本以从外部 JSON 文件中获取数据并附加到 #test 元素:
$(document).ready(function(){
$.getJSON('/path_to_json_file',function(json){
$.each(json, function(i,data){
$("#test").append('<li class="col-xs-4 col-md-3 ' + data.status + '" data-id="' + data.id + '"><div class="area view"><div class="game-label ' + data.title + '"><div class="news">News</div></div><div class="image ' + data.url_title + '"></div><div class="mask"><a href="" class="btn">BTN1</a><a href="" class="btn">BTN2</a><a href="#' + data.url_title + '" class="btn ' + data.info_visible + '"><span class="glyphicon glyphicon-info-sign"></span></a><a class="btn btn-star for-members"><span class="glyphicon"></span></a></div></div><div class="game-name sr-only"><a href="#">' + data.title + '</a></div></li>');
});
});
});
一切正常。但我也想选择搜索 JSON 数据并在页面上显示结果。在输入中输入条目的名称 (jsondata6) 时,所有与搜索语句不匹配的条目都应该消失,以便用户只能看到正确的项目。
搜索输入
<input type="search" name="search" id="search" value="" />
JSON 文件
{"jsondata1":"jsondata1",
"jsondata2":"jsondata2",
"jsondata3":"jsondata3",
"jsondata4":"jsondata4",
"jsondata5":"jsondata5",
"jsondata6":"jsondata6"
}
来自 JSON 的标记
<ul id="test">
<li class="col-xs-4 col-md-3 jsondata1" data-id="jsondata2">
<div class="area view">
<div class="game-label jsondata3">
<div class="news">News</div>
</div>
<div class="image jsondata4"></div>
<div class="mask">
<a href="" class="btn btn-play js-run-game"></a>
<a href="" class="btn btn-demo js-run-demo"></a>
<a href="#" class="btn btn-info jsondata5"><span class="glyphicon glyphicon-info-sign"></span></a>
<a class="btn btn-star"><span class="glyphicon"></span></a>
</div>
</div>
<div class="game-name sr-only"><a href="#">jsondata6</a></div>
我正在尝试修改上面的脚本,但到目前为止还没有成功。有什么帮助吗?
谢谢!
【问题讨论】:
-
你能不能做一个小提琴,这样会更容易帮助你
标签: javascript jquery json search getjson