You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用jQuery向Select下拉框追加选项?附相关代码片段

解决jQuery向Select下拉框追加选项的问题

嘿,我一眼就看出你代码里的问题啦——在$.each循环里,你错误地直接用了整个data数组对象来取属性,而不是用循环迭代时的当前项value。这会导致所有下拉选项都重复同一个值(甚至可能取不到正确值),给你修正后的完整代码:

首先是你的HTML部分(保持不变):

<select class="form-control prod" name="SalesPerson" id="SalesPerson" required>
    <!-- <option value="">Select Sales Person</option> -->
</select>

然后是修正后的Ajax成功回调代码:

success: function(data){
    console.log(data);
    // 可选:清空下拉框原有选项,防止多次调用Ajax时重复追加
    $('#SalesPerson').empty();
    // 遍历返回的data数组,每一项用value指代
    $.each(data, function(key, value) {
        // 用value访问当前项的admin_id和fname属性
        $('#SalesPerson').append("<option value='" + value.admin_id + "'>" + value.fname + "</option>");
    });
}

几个关键说明:

  • 核心修正:把data.admin_id和data.fname改成value.admin_id和value.fname,因为data是整个数组,而value才是循环到的单个对象
  • 建议恢复注释掉的默认提示选项:把<!-- <option value="">Select Sales Person</option> -->的注释去掉,这样用户打开页面时能看到明确的选择提示
  • 可选的empty():如果你的Ajax请求可能被多次触发,加上这个方法可以清空之前的选项,避免下拉框里堆满重复内容

内容的提问来源于stack exchange,提问作者Shreyas Achar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 06:30:58