<select name="select1">
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</seclet><select name="select2">
</seclet>我想请教的是如何当用户选择了其中的一项(如选择了B),然后根据其值调用一个java函数getData(String id)读取相应的数据到select2中?getData(String id)函数已经实现。其实和一些列车时刻表查询类似,当用户选择了某个省后,另外一个列表列出该省对应的地区名称。

解决方案 »

  1.   

    我也问了这个问题 我现在是用ajax实现的
      

  2.   

    给你个简单的例子看看<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>无标题文档</title>
    </head><body>
    <script language="JavaScript">
       function modeChange(){
          if(document.inputForm.searchkey1.value=='sp'){
             document.all('id_keyshow').style.display= 'none';
             document.all('id_spshow').style.display= 'block';
          }
          else{
             document.all('id_keyshow').style.display= 'block';
             document.all('id_spshow').style.display= 'none';
          }
       }
    </script><form name="inputForm" method="post" action="">
      <table border="0" cellspacing="1" cellpadding="1"  class="table-style2" align="center" width="135">
        <tbody id="id_keyshow" style="display:block"  >
          <tr>
            <td align="left"> <font class="font2">关键字</font></td>
          </tr>
          <tr>
            <td>
              <input type="text" name="searchvalue1" value="" maxlength="20" class="input-style0">
            </td>
          </tr>
        </tbody>
        <tbody id="id_spshow" style="display:none" >
          <tr>
            <td>
              <div align="left"><font class="font2">铃音供应商 </font></div></td>
          </tr>
          <tr>
            <td>
              <select name="spindex" class="select-style0"  >
                <option value=0 > 所有铃音供应商</option>
                <option value=1>迪信通</option>
                <option value=2>优联时空</option>
                <option value=4>腾讯</option>
                <option value=5>天津通信业务宣传</option>
                <option value=6>空中信使</option>
                <option value=7>美通无线</option>
                <option value=3>星格科技</option>
                <option value=8>网龙科技</option>
                <option value=12>广州新嵘</option>
                <option value=13>搜狐</option>
                <option value=15>悦铃俱乐部</option>
                <option value=16>鸿联九五</option>
                <option value=17>泰科时讯</option>
              </select>
            </td>
          </tr>
        </tbody>
        <tr>
          <td>
            <div align="left"><font class="font2">选择类型</font></div></td>
        </tr>
        <tr>
          <td>
            <select size="1" name="searchkey1" class="select-style0" onchange="modeChange();">
              <option value="ringid">铃音代码</option>
              <option value="ringlabel" selected>铃音名称</option>
              <option value="singgername">歌手</option>
              <option value="sp">铃音提供商</option>
              <option value="uploadtime">入库时间</option>
              <option value="ringfee">铃音价格</option>
            </select>
          </td>
        </tr>
      </table>
    </form>
    </body>
    </html>
      

  3.   

    用js不行的,要的结果是动态的从数据库中获得的,如果用js则需要把所有的数据都预先准备好,效率太低了,没有可操作性
      

  4.   

    用ajax,你可以参考下面的例子:
    http://www.blogjava.net/rickhunter/articles/46582.html
      

  5.   

    可以用动太的生成select选择的内容啊!在这时你再把test值动太取出
    function  choose()  

    b=document.getElementById("classGradeId")
    b.innerHTML=""
    test=new Array("一","二","三","四","五","六")
    for(i=1;i<count;i++) {
    var  opt=new  Option( test[i-1]+"年级",i,true,true)  
    b.options[b.options.length]  =  opt}
    _class()
    }
      

  6.   

    可以不用Ajax,但是不用的话,你选择了第一级的时候就调用onchang事件来提交获取数据就OK了!