2017-06-29 36 views
1

我的客户端有一个作业板,其API数据通过Ajax提取。我可以解析“工作”数据,但似乎无法拉别的东西。例如,这个工程的工作列表的名称拉到一个选择框:通过Ajax从JSON中提取不同的数据字符串

$.ajax({ 
    url:'https://api.greenhouse.io/v1/boards/roivantsciences/jobs/', 
    type:'GET', 
    data: 'q=' + "", 
    dataType: 'json', 
    success: function(json) { 
     $.each(json.jobs, function(i, value) { 
      $('#myselect').append($('<option>').text(value.title).attr('value', value.title)); 
     }); 
    } 
}); 

但是当我改变“json.jobs”到别的像“json.offices”或“json.locations”没有什么是拉。我如何准确地将这些数据字符串作为一个完整的职业页面进行筛选?感谢任何指导。

这是JSON,如果你需要看一看:

https://api.greenhouse.io/v1/boards/roivantsciences/jobs/ 
+0

我没有看到'办公室或'位置'对象在给定的json –

+0

对不起意思是“位置”。 – pjldesign

+1

尝试'$ .each(json.jobs,function(i,value){('#myselect')。append($('

回答

1

尝试拉所有职位的location.name $.each(json.jobs, function(i, value) { $('#myselect').append($('<option>').text(value.location.name).att‌​r('value', value.location.name)); });

+0

这太棒了。它的工作原理是,但现在它拉动每个位置的每个实例,例如:它多次将纽约作为“

0

香港专业教育学院做了一个小测试:

$.ajax({ 
url:'https://api.greenhouse.io/v1/boards/roivantsciences/jobs/', 
type:'GET', 
data: 'q=' + "", 
dataType: 'json', 
success: function(json) { 
    console.log(json) 
} 

});

我从控制台回来的是,你的json对象只有'jobs'作为它的顶级属性。

你必须要经历像这样获得位置:

$.each(json.jobs, function(i, value) { 
     console.log(value.location); 
    }); 

,那么你必须在这里面的位置对象,你得到的属性“名”

,这样你们可以得到价值的名字.location.name