需求是这样的,我有两种设定班次的方式A和B 然后页面上有A和B的下拉选择框,比如说我选A的话 局部刷新一下,页面下半部分显示的内容和选择B的时候完全不同。
我的想法是在选择A或者B的时候 ajax提交,走一个action根据前台返回过来的选择再判断返回过去哪一个页面。
下面是我的JS代码:<script type="text/javascript">
$(function () {
    $("#RuleType").change(function () {    
            var params = '{typeID:"' + $(this).val() + '"}';                 
            $.ajax({
                type: "POST",                   
                url: "../AccessPassRule/AddAccessRule",    
                data: params,                     
                dataType: "text",              
                contentType: "application/json; charset=utf-8",
                beforeSend: function (XMLHttpRequest) {                },
                success: function (msg) {
                },
                error: function (xhr, msg, e) {
                    alert("error");
                }
            });
        });
    });   
</script>问题来了我ACTION判断走哪个view这些应该没错,就是我不管选择A或者B 显示的都是同一view 我很郁闷啊。
或者各位有更好的解决方案吗?求教了

解决方案 »

  1.   

    你请求后台,后台回发数据,你再根据不同的数据跳转不同的页面,那你何必用ajax,
    局部刷新,你只需要设定显示的view,用回发的数据重组view数据显示就可以了
      

  2.   

    哦 是这样的 其实ajax 就是我在选择A或者B的时候有一次提交,然后走ACTION 但是我返回的VIEW老师同一张
      

  3.   

    ajax是为了实现页面不刷新,使局部进行刷新,你进行页面的跳转那不就无意义了么你用ajax访问后台后,将你得到的数据以json的形势回发给前台,然后通过js对数据进行组装显示
      

  4.   


    不仅仅是数据不同哦,数据的页面格式也较复杂。而且前后两个view相差比较大哦
      

  5.   

    var params = '{typeID:"' + $(this).val() + '"}'; 你看下你params ,得到的下拉菜单的值  选择不同时  是A跟B不  貌似不是。
      

  6.   

    没关系,可以设定AB2个view,一个隐藏一个显示,控制下就OK了。
      

  7.   

    success: function (msg) {
                    },
    成功了,后台返回一个参数,不同的值做相应的跳转就行。
      

  8.   

    呵呵,不是的,是ajax的 有空多了解jqueay吧
      

  9.   

    弄两个div,隐藏,显示就可以了,里面的数据可以使用ajax查
      

  10.   

    呵呵 是用jquery封装来实现的ajax ,如果用纯js的话 应该比这里要写更多的代码。
      

  11.   

    其实我跑代码的时候 选择A或者B的时候 后台判断 已经是成功走不同的VIEw了 但是就是显示出来不对 郁闷的嘞。 谢谢你的回答 
      

  12.   

    cache了?参数加个date:new Date()或者加个cache:false的试试。
    你的这个写法貌似会被缓存住。
      

  13.   

      success: function (msg) {
                    },
    success的处理过程呢? 可以直接把要返回的两个内容写成jsp页面 在success里写 div.html(msg)就可以了
      

  14.   

    我用post方法了哦 应该不会缓存吧
      

  15.   

    返回内容写成JSP 会不会太多了哦 ,页面颇复杂的哦