我有一个针对共享点 API 的 AJAX 请求。它返回一个文件数组。我正在获取这些结果数组并向 Select 元素添加一系列选项。我希望能够按 Name 属性按字母顺序对数组进行排序。我该怎么做呢?我当前的 Ajax 调用如下。谢谢
jQuery.ajax({
url: url,
type: "GET",
headers: {
"accept": "application/json;odata=verbose",
},
success: function (data) {
jQuery("#items").empty();
jQuery("#items").prepend('<option value="-1">-Select Item-</option>').val('-1');
jQuery.each(data.d.results, function (index, item) {
jQuery("#items").append('<option value="' + item.ServerRelativeUrl + '">' + item.Name + '</option>');
});
jQuery("#items").val("");
},
error: function () {
alert("Error getItems");
}
});
};
最佳答案
您可以在 JavaScript 中对数组进行排序,但是您不能让 Sharepoint 为您返回一个有序列表吗?看起来这将是一个有用的功能。无论如何,在 JavaScript 中:
jQuery("#items").prepend('<option value="-1">-Select Item-</option>').val('-1');
var res = data.d.results.sort(function(a,b){
if(a.Name < b.Name) return -1;
if(a.Name > b.Name) return 1;
return 0;
});
jQuery.each(res, function (index, item) {
jQuery("#items").append('<option value="' + item.ServerRelativeUrl + '">' + item.Name + '</option>');
});
关于javascript - 如何对AJAX请求返回的JSON格式数据进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33287199/