+ -
当前位置:首页 → 问答吧 → struts2 中 级联菜单怎么做

struts2 中 级联菜单怎么做

时间:2011-08-16

来源:互联网

多级菜单实现级联效果,且页面不刷新,求高手指点

作者: Sodizzj   发布时间: 2011-08-16

随便找个js框架去。

作者: softroad   发布时间: 2011-08-16

菜单select的option是从数据库copy来的,js可行?

作者: Sodizzj   发布时间: 2011-08-16

随变找一个ajax就可以实现

作者: wu_wenjie   发布时间: 2011-08-16

级联有好多种做法,实现不刷新,那不是struts的范围了。
可以选择用jquery的tree去操作,建议楼主去google搜dtree或ztree,两种不错的tree。
数据库中必须有parentid,其余的ID可以备用如等级(1,2,3)

作者: dongisland   发布时间: 2011-08-16

级联有好多种做法,实现不刷新,那不是struts的范围了。
可以选择用jquery的tree去操作,建议楼主去google搜dtree或ztree,两种不错的tree。
数据库中必须有parentid,其余的ID可以备用如等级(1,2,3)

作者: dongisland   发布时间: 2011-08-16

HTML code

院系:
<select name="yx" id="yx">
    <option value="1">计算机</option>
    <option value="2">音乐</option>
    <option value="3">舞蹈</option>
</select>
专业:
<select name="zy" id="zy">
</select>
班级:
<select name="bj" id="bj">
</select>



JScript code

$(document).ready(function(){

    var option1 = "<option value='";
    var option2 = "'>";
    var option3 = "</option>";

    // 选择院系
    $('#yx').change(function(){
        var yxVal = $("#yx").val();
        $.ajax({
            url: "*****.action",
            type: "post",
            data: "yx="+yxVal,
            error: function(){
                alert('院系-专业关联失败');
            },
            success : function(result){  // result 返回的是json格式数据
                var dataObj = eval("("+result+")");//转换为json对象
                var a;
                for(var i = 0; i < dataObj.Table.length; i++){
                    a += option1 + dataObj.Table[i].zyID + option2 + dataObj.Table[i].zyNAME + option3;
                }
                $('#yx').html(a);
            }
        });
    });

    // 选择专业
    $('#zy').change(function(){
        var zyVal = $("#zy").val();
        $.ajax({
            url: "*****.action",
            type: "post",
            data: "zyID="+zyVal,
            error: function(){
                alert('专业-班级关联失败');
            },
            success : function(result){  // result 返回的是json格式数据
                var dataObj = eval("("+result+")");//转换为json对象
                var a;
                for(var i = 0; i < dataObj.Table.length; i++){
                    a += option1 + dataObj.Table[i].bjID + option2 + dataObj.Table[i].bjNAME + option3;
                }
                $('#bj').html(a);
            }
        });    
    });
});




现在级联操作控件网上都有很多的,自己靠ajax写一个也是没有问题的……

作者: dragonsky_w   发布时间: 2011-08-16

ajax就是最好的实现方法啊

作者: hepeng154833488   发布时间: 2011-08-16

热门下载

更多