本帖最后由 shakexe 于 2011-03-22 10:58:03 编辑

解决方案 »

  1.   

    ajax去实现。不难,只是比较麻烦。
    建议做一个多级联动的插件,在第一次载入时通过AJAX得到所有数据的XML档,然后再对其进行处理。。
      

  2.   

    获取客户信息的时候传2个参数 。
    销售人员 和地域 onchange的时候ajax去服务器端拿值 。
    如果 销售人员 地域 其中那个没有选择 就那个条件为所有的 。
    再给客户选择赋值 。不知道说明白么 。
      

  3.   

    简单的做法用servlet或者generichandler接受参数,返回XML结构或者JSON结构的流,具体看你怎么选择。
    不想做判断就写三个servlet或者generichandler分别对应三个不同的绑定。其实这个东西的实现思路和省市区三级联动是一样的。http://blog.csdn.net/yehZhou/archive/2009/10/21/4706323.aspx你可以看下这个,虽然我是基于asp.net ajax + webservice来写的,但是思路是一样的
      

  4.   

    zell419  能不用ajax吗,那样做工程貌似有点过了?只用javascript和asp怎么做出来啊?
      

  5.   

    不用AJAX是无法达到:
    1,只选择销售人员会出现销售人员名下的所有客户
    2,只选择地域会出现某一地域的所有客户
    这样的效果的,不用AJAX就需要一个表单来提交到后台查询相关资料。然后返回数据重新组合成SELECT,这样会显得比较烦琐,而且用户体验也不好!每查一个东西页面都要重新组织一次,闪烁不断,所以最佳的方法还是AJAX无刷新联动查询!
    利用select的onchange事件去激活ajax后台查询,然后再更新另一个select!
      

  6.   

    恩 有道理,谁能提供个ajax做的asp联动源码,可用的话就结贴了
      

  7.   

    按理说,单纯用JS也是可以达到的,但是你想过没有?这样会把几乎所有客户都暴露给客户端,这样不太好吧?所以,坚决用AJAX必须啊!楼主你说呢?
      

  8.   

    根据你的选择情况动态去判断
    select的onchange()事件
    当select改变时,触发事件,读取相应的后台数据,并填充下边select
      

  9.   

    我已经试过用javascript来试验了 可以,将自己写的两个函数晾下,感谢大家的帮忙
    至于大家说的ajax同样能弄,就是有点麻烦
    function changeselectx(usercode,areaid)
    {document.form1.s2.length = 0;
    document.form1.s2.options[0] = new Option('==请选择客户==',''); for (i=0;i<subval2.length ;i++ )
    {
    if(subval2[i][3]==usercode && areaid == 0)
    {
    document.form1.s2.options[document.form1.s2.length] = new Option(subval2[i][2],subval2[i][1]);
    }
    else if(subval2[i][3]==usercode && subval2[i][0]==areaid)
    {
    document.form1.s2.options[document.form1.s2.length] = new Option(subval2[i][2],subval2[i][1]);
    }
    }
    }function changeselectd(areaid,usercode)
    {document.form1.s2.length = 0;
    document.form1.s2.options[0] = new Option('==请选择客户==',''); for (i=0;i<subval2.length ;i++ )
    {
    if(subval2[i][0]==areaid && usercode == 0)
    {
    document.form1.s2.options[document.form1.s2.length] = new Option(subval2[i][2],subval2[i][1]);
    }
    else if (subval2[i][0]==areaid && subval2[i][3]==usercode)
    {
    document.form1.s2.options[document.form1.s2.length] = new Option(subval2[i][2],subval2[i][1]);
    }

    }
    }