easyui tree 请教大家一个问题,easyui comboree 下拉树(多选)的checkbox怎么隐藏啊?根据json节点属性来判断是否隐藏复选框。请教!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.jeasyui.com/download/v123.php这个是easyui的下载地址。上面有demo,你可以看下。 easyui 是一个jquery插件,它的这个combotree(下拉框树)的功能和我要求的有些出入,需要想办法改装一下,例如绑定树节点的时候判断下属性来决定是否显示复选框。 这个好像没法弄。看看它的生成的结构,用jquery操作它吧。<div class="tree-node" node-id="8" style="cursor: pointer;"><span class="tree-checkbox tree-checkbox0"></span>//这个就是那个checkbox了<span class="tree-title">名称</span></div> 我在找绑定class属性的事件,可以在绑定事件里面判断根据属性判断是否添加tree-checkbox 建议楼主使用 dhtmlx tree,这个官方有详细的稳定和sample,并且支持异步加载,最主要的是这个插件api非常丰富,皮肤的可配置性。 这个需要关注下 ~~~ 对于 checkbox 的显示和隐藏, LZ是想在页面加载的时候全部显示呢 ? 还是利用方法onBeforeExpand:function(node,param){} 进行异步显示我在找绑定class属性的事件,可以在绑定事件里面判断根据属性判断是否添加tree-checkbox 我想思路应该也是这样的 , onLoadSuccess:function(node,data){} 中实现吧 ? //此处判断节点是否为部门节点。如果是的话,不显示复选框。 if (_c6.checkbox&&!new RegExp("dpt").test(_ce.id.toString())) { if (_c6.onlyLeafCheck) { if (_ce.state == "open" && (!_ce.children || !_ce.children.length)) { if (_ce.checked) { $("<span class=\"tree-checkbox tree-checkbox1\"></span>").prependTo(_cf); } else { $("<span class=\"tree-checkbox tree-checkbox0\"></span>").prependTo(_cf); } } } else { if (_ce.checked) { $("<span class=\"tree-checkbox tree-checkbox1\"></span>").prependTo(_cf); _c7.push(_cf[0]); } else { $("<span class=\"tree-checkbox tree-checkbox0\"></span>").prependTo(_cf); } } }上面是easyui绑定时给节点添加checkbox样式的代码,我暂时是在这里面判断的。大家还有更好的方法么?回复7楼,我在onLoadSuccess里面遍历去除checkbox样式,利用combotree的onClick:function(node,data){bindCombotree();} 实现联动。第一次加载所有combotree的checkbox显示正确,点击改变后,第一个显示正确,其它的checkbox没有效果,也就是说没控制住。 点击改变后 有对应的函数 onSelect (function(node){});第一次加载能成功, 那么 改变后应该也能成功吧 ~你直接在 easyUI 中更改,个人觉得不太可取吧 ?当然如果没有其他的解决方法 , 这也不失为解决问题的渠道 ~~ 这个方法我用过。不过达不到我说的效果。只能改变第一个下拉树,后面的两个就不能改了。(我做的是点击一个下拉树,改变另外三个checkbox样式) 消除ie浏览器声音 JS問題請教~急~我是新手 判断当前浏览器首页地址的问题 怎么判断客户端能否访问internet上的某个站点? 请教javascript的prototype问题 正则表达式? 如何实现从右往左滚动,起始位置不是从最右边开始? 几道Javascript面试题目,高手来答。。。 如何在提交了表单以后再回到表单时仍然保留原有的信息? 如何动态改变一个div块的样式? 下面代码该如何修改 如下代码如何修改?
这个是easyui的下载地址。上面有demo,你可以看下。
<span class="tree-checkbox tree-checkbox0"></span>//这个就是那个checkbox了
<span class="tree-title">名称</span>
</div>
我在找绑定class属性的事件,可以在绑定事件里面判断根据属性判断是否添加tree-checkbox
我想思路应该也是这样的 , onLoadSuccess:function(node,data){} 中实现吧 ?
if (_c6.checkbox&&!new RegExp("dpt").test(_ce.id.toString())) {
if (_c6.onlyLeafCheck) {
if (_ce.state == "open" && (!_ce.children || !_ce.children.length)) {
if (_ce.checked) {
$("<span class=\"tree-checkbox tree-checkbox1\"></span>").prependTo(_cf);
} else {
$("<span class=\"tree-checkbox tree-checkbox0\"></span>").prependTo(_cf);
}
}
} else {
if (_ce.checked) {
$("<span class=\"tree-checkbox tree-checkbox1\"></span>").prependTo(_cf);
_c7.push(_cf[0]);
} else {
$("<span class=\"tree-checkbox tree-checkbox0\"></span>").prependTo(_cf);
}
}
}
上面是easyui绑定时给节点添加checkbox样式的代码,我暂时是在这里面判断的。大家还有更好的方法么?
回复7楼,我在onLoadSuccess里面遍历去除checkbox样式,利用combotree的onClick:function(node,data){bindCombotree();} 实现联动。第一次加载所有combotree的checkbox显示正确,点击改变后,第一个显示正确,其它的checkbox没有效果,也就是说没控制住。
第一次加载能成功, 那么 改变后应该也能成功吧 ~你直接在 easyUI 中更改,个人觉得不太可取吧 ?当然如果没有其他的解决方法 , 这也不失为解决问题的渠道 ~~