用javascript实现下拉菜单互动

本文介绍了一个使用JavaScript实现的下拉菜单联动选择框示例。通过监听一级菜单变化来动态更新二级菜单选项,同时提供了输入校验功能确保用户正确填写服务类型及二级服务类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

js 代码
  1. <html>   
  2. <head><title>test select changed</title></head>   
  3. <script language='javascript'>   
  4.   
  5. // 更新二级服务类型   
  6. function updateSubServer() {   
  7.     var arrays = [['100', 'aa', '101'],['100', 'bb','102'],['200', 'cc', '201'], ['200', 'dd', '202']];   
  8.     clear_sub_server();    
  9.     var sub_servers2 = document.getElementById("sub_server");      
  10.     var option_1 = null;   
  11.     for (var i = 0; i < arrays.length; i++) {   
  12.         option_1 = document.createElement("option");   
  13.         if (document.forms[0].server.options[document.forms[0].server.selectedIndex].value == arrays[i][0]) {   
  14.             option_1.text = arrays[i][1];   
  15.             option_1.value = arrays[i][2];   
  16.             sub_servers2.add(option_1);   
  17.         }   
  18.     }   
  19. }   
  20.   
  21. // 清除二级服务类型,只留一个空的选择项   
  22. function clear_sub_server() {   
  23.     var sub_servers = document.getElementById("sub_server");   
  24.     while(sub_servers.childNodes.length > 0) {   
  25.         sub_servers.removeChild(sub_servers.childNodes[0]);   
  26.     }   
  27.     var option_2 = document.createElement("option");   
  28.     option_2.text = "请选择二级服务类型";   
  29.     option_2.value = "";   
  30.     sub_servers.add(option_2);   
  31. }   
  32.   
  33. // 输入校验   
  34. function checkInput() {    
  35.     if (document.forms[0].server.value == '') {   
  36.         alert('请输入服务类型!');   
  37.         return false;   
  38.     }   
  39.     if (document.forms[0].sub_server.value == '') {   
  40.         alert('请输入二级服务类型!');   
  41.         return false;   
  42.     }   
  43.     document.forms[0].submit();   
  44. }   
  45. </script>   
  46. <body>   
  47. <form name='form1' action='#' method='get' onsubmit="checkInput();return false;">   
  48.     服务类型:<select name='server' id='server' onchange='updateSubServer();'>   
  49.         <option value=''>请选择服务类型</option>   
  50.         <option value='100'>第一个服务</option>   
  51.         <option value='200'>第二个服务</option>   
  52.     </select>   
  53.     二级服务类型:<select name='sub_server' id='sub_server'>   
  54.         <option value=''>请选择二级服务类型</option>   
  55.     </select>   
  56.     <input type='submit' />   
  57. </form>   
  58. </body>   
  59. </html>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值