var type = $(this).attr('id');
$.ajax({
type: 'GET',
url: 'path/to/example.json',
dataType: 'json',
data: {type: "type"} //not working?
......
{
的Json
"name": "Jh",
"type": "zoologist, hobbyist"
},
HTML
<div class="filter">
<a href="?type=all" id="all">View All</a>
<a href="?type=zoologist" id="zoologist">Zoologist</a>
<a href="?type=hobbyist" id="hobbyist">Hobbyist</a>
<a href="?type=judge" id="judge">Judge</a>
</div>
不熟悉$ .ajax并且在很长一段时间内感到沮丧,试图将参数传递给json中的类型过滤器。
将点击过滤器链接,然后获取id的属性。然后想要将此id传递给数据:{type:type}。
想要检索过滤的相同类型的详细信息
不明白为什么它没有做任何事情。或者不可能在json中按类型过滤?
答案 0 :(得分:0)
显然,在将数据发送回客户端之前过滤数据会更好,但根据您没有使用/想要任何服务器端代码的注释。
因此,只需使用js,就可以返回整个数据集并对其进行过滤:
$.ajax({
type: 'GET',
url: 'path/to/example.json',
dataType: 'json',
success: function(response) {
console.log('success, filtering response...');
//Filter the returned json by "filter"
var filteredJson = $(response).filter(function (i,n) {
return n.type === $('#someId').attr('id');
});
//... more code
}
});