Как я могу динамически удалить все параметры раскрывающегося списка в JavaScript?

document.getElementById('id').options.length = 0; 

или

 document.getElementById('id').innerHTML = ""; 
 var select = document.getElementById('yourSelectBox'); while (select.firstChild) { select.removeChild(select.firstChild); } 

Установка length в 0, вероятно, лучший способ, но вы также можете сделать это:

 var mySelect = document.getElementById("select"); var len = mySelect.length; for (var i = 0; i {amp}lt; len; i  ) { mySelect.remove(0); } 
 {amp}lt;select id="thing"{amp}gt;{amp}lt;option{amp}gt;fdsjl{amp}lt;/option{amp}gt;{amp}lt;/select{amp}gt; {amp}lt;script{amp}gt; var el = document.getElementById('thing'); el.innerHTML = ''; // or this while ( el.firstChild ) { el.removeChild( el.firstChild ) } {amp}lt;/script{amp}gt; 

Это очень легко, используя JavaScript и DOM:

 while (selectBox.firstChild) selectBox.removeChild(selectBox.firstChild); 

Самым быстрым решением, которое мне удалось найти, является следующий код (взят из этой статьи ):

 // Fast javascript function to clear all the options in an HTML select element // Provide the id of the select element // References to the old {amp}lt;select{amp}gt; object will become invalidated! // This function returns a reference to the new select object. function ClearOptionsFast(id) { var selectObj = document.getElementById(id); var selectParentNode = selectObj.parentNode; var newSelectObj = selectObj.cloneNode(false); // Make a shallow copy selectParentNode.replaceChild(newSelectObj, selectObj); return newSelectObj; } 

Существует простой и элегантный способ сделать это:

 for(var o of document.querySelectorAll('#id {amp}gt; option')) { o.remove() }