Valeur déroulante Recharger HTML JavaScript

J'ai un script comme ceci:

<html> <head></head> <body> <select id="first" onchange="deleteitem()"> <option value="1">One</option> <option value="2">Two</option> <option value="3">Three</option> <option value="4">Four</option> <option value="5">Five</option> <option value="6">Six</option> <option value="7">Seven</option> <option value="8">Eight</option> <option value="9">Nine</option> </select><br > <select id="second" > <option value="1">One</option> <option value="2">Two</option> <option value="3">Three</option> <option value="4">Four</option> <option value="5">Five</option> <option value="6">Six</option> <option value="7">Seven</option> <option value="8">Eight</option> <option value="9">Nine</option> </select><br > <script> var one = document.getElementById('first'); var two = document.getElementById('second'); function deleteitem() { for(var i = one.selectedIndex; i >= 0; i--){ two.remove(i); for(var x = one.length;x>=one.selectedIndex+5;x--) { two.remove(x); } } } </script> </body> </html> 

Lorsque l'utilisateur change la première liste déroulante, il supprimera certains éléments dans la deuxième liste déroulante.

Ma question est la suivante: comment puis-je recharger la deuxième liste déroulante lorsque je sélectionne la première liste déroulante sans page de rafraîchissement?

Il a déjà répondu ici

 function bindDdl() { try { var ddl = document.getElementById('ddl1'); var x = PageMethods.GetData('', onsuccess, onfail); } catch (e) { alert(e); } } function onsuccess(result) { try { var ddl = document.getElementById('ddl1'); var count= ddl.options.length; while (ddl.options.length > 0) { ddl.options.remove(0); } for (var i = 0; i < result.length-1; i=i+2) { var opt = document.createElement("option"); // Assign text and value to Option object opt.text = result[i]; opt.value = result[i+1]; ddl.options.add(opt); } } catch (e) { alert(e); } } 

Vous pouvez avoir l'événement onchange comme celui-ci

Regardez ici

Vous pouvez donc le recharger mais

REMARQUE: – si vous liez les contrôles côté serveur côté client, cela vous donnera toujours une erreur. Placez-les plutôt sur le côté du serveur et ajoutez des valeurs au côté client, c'est préférable

Vous pouvez essayer quelque chose de similaire à:

 function reload() { var two = document.getElementById('second'); // clear the select with id="two" two.innerHTML = ""; // re-add the options var words = new Array("One", "Two", "Three", "Four" ... ); // fill it up yourself for(var i = 1; i <= 9; i++) { var option = document.createElement("option"); option.text = words[i-1]; option.value = i; two.appendChild(option); } }