我使用JQuery GET请求从在单独的本地服务器上运行的RScript获取数据(使用plumber
)。如果我console.log
数据,它会返回它应该的样子,但它也会返回一个" __ proto __"包含(看起来像什么)50个随机函数的数组(下面的代码段是console.log' d,其中__Proto__折叠了)。
0:{Name: "Frank", Salary: 9800}
1:{Name: "Danny", Salary: 7700}
2:{Name: "Charlie", Salary: 5000}
3:{Name: "Ian", Salary: 4800}
4:{Name: "DJ", Salary: 4300}
5:{Name: "Logan", Salary: 4300}
6:{Name: "Jorge", Salary: 3800}
7:{Name: "Salvador", Salary: 3700}
8:{Name: "Jason", Salary: 3600}
9:{Name: "Chet", Salary: 3000}
length:10
__proto__: Array(0)
当我尝试将其中一个名称添加到我的网页时,它可以正常工作:
$orders.append('<li>Name: ' + orders[0].Name + '</li>')
返回&#34; Frank&#34;
但是当我尝试发布所有名称时,它会附加几个&#34;名称:undefined&#34;:
$.each(orders, function(i, order) {
$orders.append('<li>P: ' + order.Name + '</li>');
});
是否有明显的问题我对$.each
函数(我对前端内容不熟悉)做错了,或者它与&#34; __ proto __&#34有关;阵列?完整代码:
$(function (){
var $orders = $('#orders');
$.ajax({
type: 'GET',
url: 'my/API/URL',
dataType: 'json',
success: function(order) {
// console.log('Success', order);
$.each(orders, function(i, order) {
$orders.append('<li>P: ' + order.PlayerName + '</li>');
});
// $orders.append('<li>P: ' + orders[0].Name + '</li>');
},
error: function(){
console.log('Error you jabroni');
}
})
})
谢谢!
答案 0 :(得分:1)
您应该将's'
添加到params成功。因为您预先orders
,而不是order
应该是:
success: function(orders) {
// console.log('Success', orders);
$.each(orders, function(i, order) {
$orders.append('<li>P: ' + order.Name + '</li>');
});
},