需求:在页面中实现两个select级联,selectA中的选择项数据是从数据库中查询出来的,selectB中的选择项需要根据selectA中被选中的选项列出对应的值(场景:用户选择某个部门后,岗位选择框中出现对应部门下面的岗位名称)。
页面select中的option是用<jsp:include page="../select.jsp"><jsp:param name="name1",value="value1"></jsp:include>标签实现选项值的列表。我的实现想法是:用javascript获取selectA的选中值,再将这个值传递到select.jsp页面去,再根据这个值去查询数据库,获取部门下的职位数据。但是现在的问题是:jsp页面取不到javascript传递过来的参数,请教各位有什么办法解决吗?

解决方案 »

  1.   

    不能用查询字符串传递参数吗,类似select.jsp?kk=123这种,jsp里面request.getParameter("kk")来取得
      

  2.   

    一个古老的话题,服务端访问客户端变量,
    方法太多了
    比较常规的有ajax,或者放入cookie
      

  3.   


    这种方式是可以,但是会导致页面显示不正常,因为select.jsp本身是没有什么可以显示的,且会引起页面错误。
      

  4.   


    这个系统中没有用到ajax。如果用cookie,万一用户的浏览器关闭了cookie功能呢?
      

  5.   

    谢谢各位的回复,这个问题今天终于解决了,方案是:在jsp页面<%...%>中先将需要的数据都取出来放到list中,将key和value用|连接组装成一个string,然后将该string赋给javascript中的变量 var job1 = "<%=job1%>";最后在脚本中再根据selectA选取的值去解析需要的string,再组装成selectB的可选项。