📄 tree.js.svn-base
字号:
/**
* 说明:调用树的示例
* 作者:许文言
* 日期:2008-05-21
* 注意点:
* 1.请根据实际情况更改下面有注释的几个参数
*
* 修改记录:
* 作者:何则锐
* 时期:2008-05-29
* 修改内容:判断节点返回值,页面修改时,是否重复showCheckValue()
* 通过点击时才运行树,改原从页面自动读取 showtree();
*
*/
function showtree()
{
Ext.onReady(function(){
//artemis相对于本页面的位置,默认是在同一级目录下
var artemisDir='';
Ext.BLANK_IMAGE_URL = artemisDir+'artemis/external/ext2/resources/images/default/s.gif';
var Tree = Ext.tree;
var tree = new Tree.TreePanel({
//用来填充tree的div的id
el: 'tree-div',
width: 218,
height: 300,
//树的选择模式:'multiple':多选; 'single':单选; 'cascade':级联多选,如果不是选择树去掉该属性
checkModel: 'cascade',
//是否只有叶子节点才出现选择框
onlyLeafCheckable: false,
animate: false,
rootVisible: false,
autoScroll: true,
loader: new Tree.TreeLoader({
//后来提供jsons数据的url
dataUrl: '/TreeTest/app?service=external/TreeTapestry',
//如果不是选择树去掉该属性
baseAttrs: {
uiProvider: Ext.tree.TreeCheckNodeUI
}
})
});
var root = new Tree.AsyncTreeNode({
text: 'root',
draggable: false,
id: 'extroot'
});
tree.setRootNode(root);
tree.render();
tree.on("check", showCheckValue); //注册"check"事件 选择叶子节点 打勾类型
//tree.on("click", showClickValue); //注册"click"事件 选择叶子节点
root.expand();
});
//checkbox返回地区的code与name,(只是子节点返回)
function showCheckValue(node, checked){
//document.getElementById('str').readOnly = true;
var selectvalue = document.getElementById('str').value.trim();//节点名称
var selectCode = document.getElementById("code").value.trim(); //节点ID
var type,tt;
var nowvalue = node.text+",";
var nowCode = node.id+",";
var strArray,codeArray;
//用于修改页面时出现的情况
//var allStr = document.getElementById('str').value.trim();
//var allCode = document.getElementById('code').value.trim();
if(selectvalue !== "" && selectvalue !== null){
strArray = selectvalue.split(",");
}
//if(selectCode !== "" && selectCode !== null){
// codeArray = selectCode.split(",");
//}
type = 0;
//tt = 0;
if (checked) {
if(node.leaf){ //返回是叶子节点时的ID与名称
if(selectvalue === ""){
selectvalue = nowvalue;
selectCode = nowCode;
}else{
if(strArray.length > 0){
//alert(strArray[0]);
//判断是否存在该节点了,特别是用在修改页面时的情况
for(var i=0;i<strArray.length;i=i+1){
if(nowvalue == strArray[i]+","){
type = 1;
}
}
if(type === 0){
selectvalue = selectvalue + nowvalue;
selectCode = selectCode + nowCode;
}
}else{
selectvalue = selectvalue + nowvalue;
selectCode = selectCode + nowCode;
}
}
/**if(selectCode === ""){
selectCode = nowCode;
}else{
if(codeArray.length > 0){
//判断是否存在该节点了,特别是用在修改页面时的情况
for(var j=0;i<codeArray.length;j=j+1){
if(nowCode == codeArray[j]+","){
tt = 1;
}
}
if(tt === 0){
selectCode = selectCode + nowCode;
}
}else{
selectCode = selectCode + nowCode;
}
}*/
}
}
else {
selectvalue = selectvalue.replace(nowvalue, "");
selectCode = selectCode.replace(nowCode,"");
//alert(selectvalue);
//alert("ddd:"+selectvalue.indexOf(selectvalue,1));
//selectvalue = selectvalue.replace(temp,"");
//selectCode = selectCode.replace(temp1,"");
}
document.getElementById('str').value = selectvalue;
document.getElementById("code").value = selectCode;
}
//点击事件时返回code与name(只是子节点返回)
/** function showClickValue(node){
//alert('提示', "你选择的是:"+node.text);
}
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -