先上代码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一点开发人员工具就立刻消失,一切变得正常
请各位朋友帮忙解决下问题哈
解决方案 »
- 鼠标的onmouseover和ommouseout
- 修改超链接里的文字
- 100分求解jquery-get问题~~不知道怎么整了!
- 请教JQUEYR AJAX
- 求:正则,取字符串中$a...$之间的部分,马上给分
- 高手请进!!!300分求助如何实现一个非常强大的拖拉式javascript地图编辑平台设计的问题!!!
- 默认浏览选择文件的控件一次只能选择一个文件,能否实现选择多个文件的功能呢,就象发邮件系统那样?
- 如何java script访问客户机上安装的打印机列表
- 急!急!请教高人:任何制作分散式关联菜单
- 请问如何在浏览器中中判断用户按了“STOP”按钮?
- Javascript中如果使用一个变量作为对象方法的参数,应该如何表示?
- FF下,用Range操作页面选中的内容,如何在失去焦点后重新恢复
console.log("")在非开发模式下会出错,这句话去掉就好了