var setting = {
view: {
addDiyDom: addDiyDom,
selectedMulti: false
},
check: {
enable: true,
autoCheckTrigger: true
},
data: {
simpleData: {
enable: true
}
},
callback: {
onCheck: onCheck
}
};
//var clearFlag = false;
function onCheck(e, treeId, treeNode) {
var v = *v*;
var p = *p*;
var checked = treeNode.checked;
var isLeaf = treeNode.isLeaf;
if(isLeaf) {
if(checked) {
jQuery(*#*+p+*_* + treeNode.tId).attr("disabled", false);
jQuery(*#*+v+*_* + treeNode.tId).attr("disabled", false);
jQuery(*#*+v+*_* + treeNode.tId).attr("checked", true);
} else {
jQuery(*#*+p+*_* + treeNode.tId).attr("disabled", true);
jQuery(*#*+p+*_* + treeNode.tId).attr("checked", false);
jQuery(*#*+v+*_* + treeNode.tId).attr("disabled", true);
jQuery(*#*+v+*_* + treeNode.tId).attr("checked", false);
}
} else {//遍历子节点
var treeObj = $.fn.zTree.getZTreeObj("treeDemo");
treeObj.expandNode(treeNode,true,true);
var nodes = treeObj.transformToArray(treeObj.getNodes());
for(var i=0;i<nodes.length;i++){
var thenode = nodes[i];
if(thenode.isLeaf) {
if(thenode.checked) {
jQuery(*#*+p+*_* + thenode.tId).attr("disabled", false);
jQuery(*#*+v+*_* + thenode.tId).attr("disabled", false);
jQuery(*#*+v+*_* + thenode.tId).attr("checked", true);
} else {
jQuery(*#*+p+*_* + thenode.tId).attr("disabled", true);
jQuery(*#*+p+*_* + thenode.tId).attr("checked", false);
jQuery(*#*+v+*_* + thenode.tId).attr("disabled", true);
jQuery(*#*+v+*_* + thenode.tId).attr("checked", false);
}
}
}
}
}
function addDiyDom(treeId, treeNode) {
if (treeNode.isLeaf) {
var theObj = $("#" + treeNode.tId);
var editStr = "<span id=*radioSpan_" +treeNode.id+ "* >"+
"<input id=*v_" + treeNode.tId + "* name=*vieworrpyRadio_" + treeNode.tId + "* disabled=*true* type=*radio* value=*0* />签收"+
"<input id=*p_" + treeNode.tId + "* name=*vieworrpyRadio_" + treeNode.tId + "* disabled=*true* type=*radio* value=*1* />处理</span>";
theObj.append(editStr);
}
}
/*列出树*/
function initPurviewTree(myObject){
$.fn.zTree.init($("#treeDemo"), setting, myObject);
}
/*返回结果*/
function returnReceives(){
$(*#savepur*).attr(*disabled*,true);
$(*#savepur*).attr(*value*,*请稍候*);
var ids_v = "";
var ids_p = "";
var names_v = "";
var names_p = "";
var zTree = $.fn.zTree.getZTreeObj("treeDemo");
var value = zTree.getCheckedNodes(true);
for(i=0;i<value.length;i++){
var isLeaf=value[i].isLeaf;
var tId=value[i].tId;
var id=value[i].id;
var name=value[i].name;
if(isLeaf) {
if(jQuery(*#v_*+tId).attr(*checked*)) {ids_v+=id+*;*;names_v+=name+*;*;}
if(jQuery(*#p_*+tId).attr(*checked*)) {ids_p+=id+*;*;names_p+=name+*;*;}
}
}
if(names_v != ** || names_p != **){
var receiversMsg = *收件人信息(*;
if(names_v != null && ** != names_v) {
receiversMsg += *可签收收件人:* + names_v + * *;
}
if(names_p != null && ** != names_p) {
receiversMsg += *可处理收件人:* + names_p;
}
receiversMsg += *)*;
//父页面返回值,并关闭本页面
jQuery(*#receiverInfos*,window.opener.document).html(**);
jQuery(*#receiverInfos*,window.opener.document).html(receiversMsg);
jQuery(*#receivers*,window.opener.document).attr(*value*,names_v+names_p);
jQuery(*#receiverIds_v*,window.opener.document).attr(*value*,ids_v);
jQuery(*#receiverIds_p*,window.opener.document).attr(*value*,ids_p);
//alert(receiversMsg+*-*+ids_v+*-*+ids_p);
jQuery(*#info_tr*,window.opener.document).show();
jQuery(*#receiverInfoDiv*,window.opener.document).show();
}
window.close();
}
/*列出树*/
$(document).ready(function(){
var path = $("#path").attr("value");
var sendType = $("#sendType").attr("value");
var gwId = $("#gwId").attr("value");
var conn = new Connection();
var url=path+"gwfsManager.html?action=receiveInit&sendType="+sendType+"&gwId="+gwId;
conn.init(url);
var json = "";
conn.send(json,initPurviewTree);
});
这是所有代码,如果我是点了父节点的话,下的子节点还有子节点,那第一个子节点下的子节点,后边加的radio就出来不了。下图:


如果是一步步的往下点开,就是下图这样的:


为什么会出现这种情况呢。