首页 新闻 搜索 专区 学院

TreeView控件上节点上CheckBox可见不可点击

0
悬赏园豆:30 [已解决问题] 解决于 2012-08-09 17:24

请问在Web开发里,怎么使TreeView控件节点上的CheckBox可以显示,但不可以点击,不能使用,但必须要显示出来,大概效果如下:

kuroro的主页 kuroro | 初学一级 | 园豆:157
提问于:2012-07-25 21:19
< >
分享
最佳答案
0

我的情况是:

在ASP.NET Web 中,TreeView加载节点,设置选中项为只读,不可操作(亦可理解为不可被取消)。
问题:
在JS中已设置checkbox只读,点击checkbox时已无效。但是点击checkbox后面的文字时,checkbox仍然可以被取消选中。

如果你的情况和我上述的相似,那可以看一下下面的JS代码

function testClick(e)
        {
            if (window.event) e = window.event;
            var evt = e.srcElement ? e.srcElement : e.target;
            if (evt.previousSibling && evt.previousSibling.tagName == "INPUT" && evt.previousSibling.type == "checkbox") {
                if(!evt.previousSibling.disabled){
                evt.previousSibling.checked = evt.previousSibling.checked ? false : true;
                }

                var childrenDivID = evt.previousSibling.id.replace('CheckBox', 'Nodes');
                var div = document.getElementById(childrenDivID);
                if (div == null) return;
                var checkBoxs = div.getElementsByTagName('INPUT');
                for (var i = 0; i < checkBoxs.length; i++) {
                    if (checkBoxs[i].type == 'checkbox') {  
                        if(!evt.previousSibling.disabled){       
                           checkBoxs[i].checked = evt.previousSibling.checked;
                        }
                    }
                }
            }
        }    

 

收获园豆:30
kumat | 初学一级 |园豆:37 | 2012-07-26 10:02

OK.谢谢你,功能都暂时实现了,方法虽然有点不一样!感谢!!

kuroro | 园豆:157 (初学一级) | 2012-08-09 17:23
其他回答(3)
0

item binding 的时候 取到checkbox  设置 enable = false

gunsmoke | 园豆:3592 (老鸟四级) | 2012-07-26 08:13
0

在数据绑定的时候判断是否选中在加enable=false;或者在前台加载的时候判断。在加这个属性

qqmamiao | 园豆:146 (初学一级) | 2012-07-26 15:15
0

这个么不就是设置下Enable就成了的东西哇,搞那么麻烦干嘛

Bright Moon ‘ s Blog | 园豆:208 (菜鸟二级) | 2013-02-24 20:22
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册