javascript - 附加选项列表但删除以前的选项

标签 javascript php arrays json

您好,我尝试根据另一个选择动态地在选择列表中附加选项:

<select>
  <option value='firstValue'>firstValue</option>
  <option value='secondValue'>secondValue</option>
</select>

<select>
  // options appended from json depending
</select>

所以我正在这样做

xhr.onreadystatechange = function () {

   if(this.readyState === 4 && this.status === 200) {

      data = JSON.parse(this.responseText);
      data.races.map(function(race){
       $(race).appendTo(mySelect)
     })

   }
}

这工作正常,但我希望新选项能够替换以前的选项,如果并且不堆叠在同一选择上。我尝试过使用 .html() ,但它只附加数组的最后一个值我也尝试过:

    $(mySelect).find('option').remove().end().append($(raza))

但它的作用与以前相同,只是仅附加数组的最后一个值,我可以获得有关如何完成此操作的任何帮助吗?谢谢!

最佳答案

清除元素的最简单方法是将其长度设置为零。

例如:

var select = document.getElementById("mySelect");
select.length = 0;  

这将删除列表中的所有元素。在循环数据并添加新项目之前执行此操作。

关于javascript - 附加选项列表但删除以前的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44640954/

相关文章:

javascript - 如何在 Javascript 中创建二维数组

javascript - 递归 Python 函数转换为 Javascript 不起作用,数组问题

javascript - 按钮导致页面重新加载

php - 如何操作多维数组

javascript - 在 Froala 编辑器中插入文件时,光标始终位于回形针图标之前

php - 使用 laravel 验证检查名称在未删除项目中是否唯一

php - 在 doctrine 中使用 findAll 选择不同的结果

java - C++ 相当于 Java 的 System.arraycopy

javascript - D3 - 通过数据识别元素

javascript - 如何在 html5 canvas 中前后移动圆圈中的对象?