如何对从 AJAX 请求中获取的响应进行排序并将它们作为 <option> 映射到 <select> 标记?

Posted

技术标签:

【中文标题】如何对从 AJAX 请求中获取的响应进行排序并将它们作为 <option> 映射到 <select> 标记?【英文标题】:how do I sort response fetched from AJAX request and map them as <option> to <select> tag? 【发布时间】:2022-01-14 22:03:50 【问题描述】:

我正在尝试使用 AJAX 对从后端获取的响应进行排序。这是我的代码:

let $select = $("#colony_code");
  
$.ajax(
      url: 'backend.php',
      type: 'POST',
      data:  "input": "fetch_colony_codes" , 
      dataType: 'json', 
      success: function(response) 
        let selectedValue = $select.val();
        let html = response.filter((e, i, a) => a.indexOf(e) === i).map(item => `<option value="$item">$item</option>`);
        $select.html(html).val(selectedValue);
      ,
      complete: function() 
);

现在,我希望将所有 options 排序到我的 &lt;select&gt; 标记中。如何对选项进行排序?

【问题讨论】:

【参考方案1】:

伙计,我很愚蠢。只需在success(..) 的开头添加response.sort(); 即可解决我的问题。呵呵

【讨论】:

您应该考虑接受这一点,以便其他人可以看到您的问题已解决,尤其是如果您自己解决了问题:)

以上是关于如何对从 AJAX 请求中获取的响应进行排序并将它们作为 <option> 映射到 <select> 标记?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 AJAX 响应中获取 cookie?

如何使用 Select2.js 对从 Ajax 调用返回的数据进行多选结果?

从排序中的响应中获取标题

如何对从 XML 解析的对象进行排序

On 向下滚动如何进行 ajax 调用并获取响应数据

jQuery Ajax - 如何错误地获取响应数据