1

这是我的 jquery 函数

var status; 
$('.status').click(function(e) {
     status= $(this).attr('id');                    
     //$('#test').html('<p>Scrolled: '+ status +'</p>');                
     callAjax();
     display();
});  

上面的这个函数获取点击的超引用的 id 并将其存储在一个变量中。并调用其他函数。

 var id = [];
 var values = [];
 function callAjax(){            
     id = [];
     values = [];
     $("#"+ status +"> td").each(function(index){                
     id.push($(this).attr("id"))
     values.push($(this).text());
     //alert($(this).attr("id")+" "+$(this).text());                          
  });           
}

上面的这个函数从行中检索所有值并将其存储在一个数组中。使用这个数组值我将创建一个新表并将其显示在单击的超链接下方(其 div 存储状态变量)

  function display(){               
            $("#"+status).append('<table id="newtable" border="1"> <tr> <td>'+values[0]+'</td><td>'+values[1]+'</td></tr></table>');
  }

在 display() 函数中,当我第一次附加表格时,它工作正常,但是当再次单击链接时,它又附加了一个表格。

输出

在此处输入图像描述

在这里,当我第一次单击链接时,它会正确显示表格,但是当我单击相同的链接时,它会附加相同的表格,第二个问题是当我单击其他链接时,第一个表格应该消失。

帮助...

4

3 回答 3

2

试试这个

function display(){ 
       $("#newtable").remove();   //removes table tag        
    $("#"+status).append('<table id="newtable" border="1"> <tr> <td>'+values[0]+'</td>                             <td>'+values[1]+'</td></tr></table>');
    }
于 2013-04-05T11:42:06.843 回答
1

清除$("#"+status)之前附加的 .

 function display(){       
 $("#"+status).clear();      
 $("#"+status).append('<table id="newtable" border="1">
               <tr> <td>'+values[0]+'</td><td>'+values[1]+'</td></tr></table>');
        }

或如评论中提到的@juhana

  function display(){       
     $("#"+status).html('<table id="newtable" border="1">
               <tr> <td>'+values[0]+'</td><td>'+values[1]+'</td></tr></table>');
            }
于 2013-04-05T11:37:31.977 回答
0

首先你清除 div 并附加 div.append 意味着只附加你给的 wat ex:in div 包含 text1 意味着如果你附加 test2 意味着它会附加测试 1 test2 明智你只需要清除 div 并附加值

 function display(){   
                $("#"+status).empty();          
                $("#"+status).append('<table id="newtable" border="1"> <tr> <td>'+values[0]+'</td><td>'+values[1]+'</td></tr></table>');
            }
于 2013-04-05T11:41:18.560 回答