DWZ中Tree树形菜单的treeCheck如何获取返回值解决方案

吞吞吐吐的 2017-11-01

javascript 解决方案 jquery 权限管理 html type input

最近在对DWZ和asp.net MVC3进行整合,其中遇到了很多问题,总算一一解决了,今天就说说题目所示的问题解决方案。

想做一个基于角色的权限管理,要对每一个Action进行权限控制。就想用DWZ的Tree树形菜单来做,结果在做的过程之中,发现DWZ的Tree树形菜单,自带的treeCheck无法返回选择的值,遇到过这种问题的朋友,应该知道这个情况。虽然官方提供一个KKK的源码样本,但基本没用,因为菜单前的复选框取消选择时,Json返回的items是空值。

经过网上搜索,没有找到有效的答案,最后自己想办法解决了,方法很笨拙,但有效。解决方法就是自己手动添加CheckBox,不要用它的treeCheck属性,也不要用它的链接扩展属性。

我先用简单的mvc示例代码循环出菜单

复制代码
复制代码
 <ul class="tree treeFolder expand">
                        @for(int i=1;i<=3;i++)
                        {
                            <li><a  href="javascript:void(0);">一级菜单 @i</a>
                                <ul>
                                    @for(int m=1;m<=5;m++)
                                    {
                                        <li><label><input type="checkbox" id="@("menu"+i+m)" />二级菜单 @m</label></li>
                                    }
                                </ul>
                            </li>
                        }
                    </ul>
复制代码
复制代码

然后在页面上其它随便某个地方放置一个按钮,触发Jquery事件。

<input type="submit" id="btn" value="输出选择内容" />

然后编写JQuery代码或js代码就可以了。

复制代码
复制代码
<script type="text/javascript">
    $(function () {
        $("#btn").click(function () {
            var str = "";
            $('input[type="checkbox"]:checked').each(function (i, e) {
                str += e.id + ",";
            });
            str = str.substring(0, str.length - 1);
            $("#resultBox").html(str);
        });
    });
</script>
复制代码
复制代码

选择好需要的对象后,点击这个按钮就成了。如图

说得不是很清楚,没用过DWZ的树形菜单的朋友肯定不知所云,但用过并遇到这种情况的朋友,就知道我说的是什么了

分类: Jquery

本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/p/6164872.html,如需转载请自行联系原作者
登录 后评论
下一篇
云栖号资讯小编
19667人浏览
2020-07-13
相关推荐
[数据库]树结构的数据库设计
2360人浏览
2014-06-02 23:37:00
dTree组件的学习
1551人浏览
2016-07-19 11:05:00
js Tree - 树形菜单插件
1405人浏览
2011-10-27 13:07:00
超强1000个jquery插件!
2396人浏览
2011-12-18 20:29:00
vc常用类总结
995人浏览
2017-11-13 20:34:00
0
0
0
1330