在jsp页面中用到的一段js觉得非常好

本文介绍了一种使用JavaScript动态地为HTML表单元素加载选项的方法。通过遍历数据集合,可以根据不同的条件更新下拉菜单的内容。这种方法适用于需要根据用户选择动态改变选项列表的应用场景。

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

<script type="text/javascript">

var brandArr = new Array();//一数组
<logic:present name="mixBrandList">//逻辑标签??
    <logic:iterate id="element" name="mixBrandList" indexId="index">//遍历该集合
 brandArr[<%=index.intValue()%>] = new Array("<bean:write name="element" property="label"/>",
   "<bean:write name="element" property="code"/>","<bean:write name="element" property="parentCode"/>");//指定数组的各个值
  </logic:iterate>
</logic:present>

function changeAsp(asp){
 m_obj1=document.forms[0].cmccBrandCode;
 m_obj1.length = 0;
 if(asp!="" && asp!="%"){
  if(brandArr.length>1){
   m_obj1.options[m_obj1.length] = new Option('请选择品牌', '%');
  }
  for ( var i = 0; i < brandArr.length; i++){
   if (brandArr[i][2] == asp){
    m_obj1.options[m_obj1.length] = new Option(brandArr[i][0], brandArr[i][1]);
   }
  }
 } 
}

<logic:present name="cityList">//市区集合
 var cityArr = new Array();
    <logic:iterate id="element" name="cityList" indexId="index">
 cityArr[<%=index.intValue()%>] = new Array("<bean:write name="element" property="label"/>",
   "<bean:write name="element" property="code"/>");
  </logic:iterate>
</logic:present>
<logic:present name="sectionList">
 var sectionArr = new Array();
    <logic:iterate id="element" name="sectionList" indexId="index">
 sectionArr[<%=index.intValue()%>] = new Array("<bean:write name="element" property="label"/>",
   "<bean:write name="element" property="code"/>");
  </logic:iterate>
</logic:present>

function changeEparchy(eparchyCode){
 m_obj1=document.forms[0].cityCode;
 m_obj1.length = 0;
 if(eparchyCode!="" && eparchyCode!="%"){
  if(cityArr.length>1){
   m_obj1.options[m_obj1.length] = new Option('全部区县', '%');
  }
  for ( var i = 0; i < cityArr.length; i++){
   if (cityArr[i][1].substring(0,2) == eparchyCode){
    m_obj1.options[m_obj1.length] = new Option(cityArr[i][0], cityArr[i][1]);
   }
  }
 } 
}

function changeCity(cityCode){
 m_obj1 = document.forms[0].sectionCode;
 m_obj1.length = 0;
 if(cityCode!="" && cityCode!="%"){
  if(sectionArr.length>1){
   m_obj1.options[m_obj1.length] = new Option('全部片区', '%');
  }
  for ( var i = 0; i < sectionArr.length; i++){
   if (sectionArr[i][1].substring(0,4) == cityCode){
    m_obj1.options[m_obj1.length] = new Option(sectionArr[i][0], sectionArr[i][1]);
   }
  }
 }
}

         function queryCondition(){
           document.forms[0].eventCode.value = "<%=AreaForm.EVENTCODE_QUERY_CITY%>";
           document.forms[0].submit();
         }
         function query(){
           document.forms[0].eventCode.value = "<%=AreaForm.EVENTCODE_QUERY_LIST%>";
           document.forms[0].submit();
         }
         function toTxt() {
           document.forms[0].eventCode.value = '<%=AreaForm.EVENTCODE_EXPORT_TXT%>';
           if(confirm("导出TXT文件时间较长,您需要导出吗?"))
           document.forms[0].submit();
         }
</script>        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值