jquery select options 删除初始选项并替换为其他选项

标签 jquery ajax

我有下面的 jquery 片段,它通过 ajax 向选择输入添加新选项。然而,选择最初有一个选项,我想删除它,然后替换为通过 ajax 返回的选项。

$(document).ready(function () {
  $('#id_previous_postcode').change(function () {
    var postcode = $(this).val()
    console.log(postcode)
    $.ajax({
      // could prevent url hard coding by using url tag in form widget attribute and assign url key here to that attr
      url: '/users/prior_addresses_ajax/',
      data: {
        'postcode': postcode
      },
      dataType: 'json',
      success: function (data) {
        var select = document.querySelector('#id_previous_full_address');
        console.log(data)
        data.property_choices.forEach(function (subarray) {
          var option = new Option(subarray[1], subarray[0]);
          select.options.add(option);
        });
      }
    })
  })
})

最佳答案

当您使用 jQuery 时,您可以 .empty() 选择。

success: function (data) {

        // Will remove previous set options from select
        $('#id_previous_full_address').empty();

        var select = document.querySelector('#id_previous_full_address');
        console.log(data)
        data.property_choices.forEach(function (subarray) {
          var option = new Option(subarray[1], subarray[0]);
          select.options.add(option);
        });
      }

关于jquery select options 删除初始选项并替换为其他选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46836005/

相关文章:

javascript - 用于编辑页面信息的 jquery 启动屏幕

javascript - 如何从用户输入的电子邮件地址中获取域名并将其链接到邮箱?

ajax - 如何通过laravel中的ajax调用发送csrf token ?

javascript - 多次调用 ajax 脚本不起作用

javascript - 在Gmail中拦截发送邮件AJAX请求

javascript - 数据表不加载嵌套对象 Ajax

javascript - 触发另一个元素下的元素事件

php - 来自 php 的 Highcharts 多个系列 json

javascript - jQuery 无法在 Blackberry OS 5 中运行?备择方案?

php - 来自mysql的下拉列表的值