先上代码function openNext(id,num){
num++;
var symbola = $("#i"+id).val();
//console.log("#i"+id);
if(symbola =="+"){
$.ajax({
type:"POST",
url:"/5akg4j/sysMenus/findSub",
data:{id:id},
dataType:"json",
error: function(){alert('加载错误,请重新操作。'); },
success:function(dates){
var records=dates.rows;
if(typeof(records) == "undefined") {
alert("没有子菜单");
return;
}
if(records.length==0){
alert("取得值为空");
}else{
for(var i=records.length-1; i>=0;i--){
var blank = "";
for(var j = 0;j<num;j++){
blank +=" ";
}
var str = "<tr id=\""+records[i].id+"\"><td align=\"center\"><input type=\"checkbox\" name=\"checkOne\""+
"id=\"checkOne\" value=\""+records[i].id+"\" /></td>"+
"<td align=\"left\">"+blank+records[i].id+"</td><td>";
if(records[i].subcount>0){
str += "<input type=\"button\" id=\"i"+records[i].id+"\" "+
"onclick=\"openNext("+records[i].id+","+num+")\" value=\"+\" ></button>";
}
str += "</td><td align=\"center\">"+records[i].name+"</td>"+
"<td align=\"center\">"+records[i].accurl+"</td>"+
"<td align=\"center\">"+records[i].sortid+"</td>"+
"<td><a href=\"javascript:void(0);\" onclick=\"dialogWindows('sysMenus/add?id="+records[i].id+"','#sysMenus');\">"+
"<i class=\"icon-plus\"></i>新建菜单 </a>"+
"<a href=\"javascript:void(0);\" onclick=\"editOneFun('sysMenus/edit','"+records[i].id+"')\">"+
"<i class=\"icon-edit\"></i>编辑 </a>"+
"<a href=\"javascript:void(0);\" onclick=\"delOneFun('"+records[i].id+"')\"><i class=\"icon-trash\"></i>删除 </a>"+
"<a href=\"javascript:void(0);\" onclick=\"dialogWindows('sysMenus/roleAddSingle"+
"?id="+records[i].id+"','#sysMenus');\"><i class=\"icon-user\"></i>分配角色</a></td></tr>";
var newNode = $(str);
$("tr#"+id).after(newNode);
}
}
}
});
$("#i"+id).attr("value","-");
}
else if(symbola=="-"){ $.ajax({
type:"POST",
url:"/5akg4j/sysMenus/findSub",
data:{id:id},
dataType:"json",
error: function(){alert('加载错误,请重新操作。'); },
success:function(dates){
var records=dates.rows;
if(records.length==0){
alert("取得值为空");
}else{
for(var i=records.length-1; i>=0;i--){
if(records[i].subcount>0){
console.log($("#i"+records[i].id).val());
if($("#i"+records[i].id).val()=="-")
openNext(records[i].id,0);
}
$("tr#"+records[i].id).empty();
$("tr#"+records[i].id).remove();
}
}
}
});
$("#i"+id).attr("value","+");
}
}
使用的jquery是1.9.1
在火狐浏览器运行正常
现在遇到的问题是,在ie下点击这个按钮有时候没反应 按钮只从+变-或者从-变+,而不显示添加的行
第二种bug是点+添加正常,点-删除行时只删除了根层方法里的,一但进入递归调用就停了
并且上述两个bug一点开发人员工具就立刻消失,一切变得正常
请各位朋友帮忙解决下问题哈
num++;
var symbola = $("#i"+id).val();
//console.log("#i"+id);
if(symbola =="+"){
$.ajax({
type:"POST",
url:"/5akg4j/sysMenus/findSub",
data:{id:id},
dataType:"json",
error: function(){alert('加载错误,请重新操作。'); },
success:function(dates){
var records=dates.rows;
if(typeof(records) == "undefined") {
alert("没有子菜单");
return;
}
if(records.length==0){
alert("取得值为空");
}else{
for(var i=records.length-1; i>=0;i--){
var blank = "";
for(var j = 0;j<num;j++){
blank +=" ";
}
var str = "<tr id=\""+records[i].id+"\"><td align=\"center\"><input type=\"checkbox\" name=\"checkOne\""+
"id=\"checkOne\" value=\""+records[i].id+"\" /></td>"+
"<td align=\"left\">"+blank+records[i].id+"</td><td>";
if(records[i].subcount>0){
str += "<input type=\"button\" id=\"i"+records[i].id+"\" "+
"onclick=\"openNext("+records[i].id+","+num+")\" value=\"+\" ></button>";
}
str += "</td><td align=\"center\">"+records[i].name+"</td>"+
"<td align=\"center\">"+records[i].accurl+"</td>"+
"<td align=\"center\">"+records[i].sortid+"</td>"+
"<td><a href=\"javascript:void(0);\" onclick=\"dialogWindows('sysMenus/add?id="+records[i].id+"','#sysMenus');\">"+
"<i class=\"icon-plus\"></i>新建菜单 </a>"+
"<a href=\"javascript:void(0);\" onclick=\"editOneFun('sysMenus/edit','"+records[i].id+"')\">"+
"<i class=\"icon-edit\"></i>编辑 </a>"+
"<a href=\"javascript:void(0);\" onclick=\"delOneFun('"+records[i].id+"')\"><i class=\"icon-trash\"></i>删除 </a>"+
"<a href=\"javascript:void(0);\" onclick=\"dialogWindows('sysMenus/roleAddSingle"+
"?id="+records[i].id+"','#sysMenus');\"><i class=\"icon-user\"></i>分配角色</a></td></tr>";
var newNode = $(str);
$("tr#"+id).after(newNode);
}
}
}
});
$("#i"+id).attr("value","-");
}
else if(symbola=="-"){ $.ajax({
type:"POST",
url:"/5akg4j/sysMenus/findSub",
data:{id:id},
dataType:"json",
error: function(){alert('加载错误,请重新操作。'); },
success:function(dates){
var records=dates.rows;
if(records.length==0){
alert("取得值为空");
}else{
for(var i=records.length-1; i>=0;i--){
if(records[i].subcount>0){
console.log($("#i"+records[i].id).val());
if($("#i"+records[i].id).val()=="-")
openNext(records[i].id,0);
}
$("tr#"+records[i].id).empty();
$("tr#"+records[i].id).remove();
}
}
}
});
$("#i"+id).attr("value","+");
}
}
使用的jquery是1.9.1
在火狐浏览器运行正常
现在遇到的问题是,在ie下点击这个按钮有时候没反应 按钮只从+变-或者从-变+,而不显示添加的行
第二种bug是点+添加正常,点-删除行时只删除了根层方法里的,一但进入递归调用就停了
并且上述两个bug一点开发人员工具就立刻消失,一切变得正常
请各位朋友帮忙解决下问题哈
console.log("")在非开发模式下会出错,这句话去掉就好了