说一下思路:
每一个显示出来的姓名会有对应主键(id),点击姓名时调用JavaScript函数,将id传给程序,去获取其他列数据。

解决方案 »

  1.   

    其实就是ajax获取数据,然后再用javascript dom来动态填充或者直接给表格的TD赋值
      

  2.   

    就是说当我点击表格里这一行的时候提取这一行td里的姓名或id,通过这个条件连接数据库再去查它的其它内容,并且在同一个页面显示出来,就是这种效果,多谢了!
      

  3.   

    去网上找个简单一点的ajax实例看看,
    明白了,你会觉得很简单的。
    http://www.phpchina.com/html/72/30772-9103.html
    提供个例子给你看看。。
      

  4.   

    http://www.phpchina.cn/bbs/viewthread.php?tid=2735
    这个也不错的
      

  5.   

    ?给我个例子就可以了,主要是把td里的内容取出来传到php里接收到,通过这个条件查询数据库然后再在本页面显示出来就可以了(无刷新),我对AJAX不熟,有劳大家了,最好在代码旁写上注释,再次谢了!
      

  6.   

    我只要点击任何一个tr时,取出这行tr里的第一个td(id或姓名),传到php做为一个查询条件就可以了,不知道我说的够不够明白,关健是例子代码呀,在线等大家了!
      

  7.   

    jquery.js需要自己下载呀<script language='javascript' src='./jquery.js'></script>
    <script language='javascript'>
    jQuery(function($)

    $("#tTest td.test").click(function(ee){
      var id = $(this).html();
        var ee=window.event||ee;
        var tmpObj = ee.srcElement ||  ee.target; 
    $.ajax({ 
      type:"post",
      url: "index.php", 
      dataType:"json",
      data: "id=" + id,
      success: function(jsonObj)
      {
        var rowObj = tmpObj.parentNode;     rowObj.childNodes[1].innerHTML = jsonObj.name;
        rowObj.childNodes[2].innerHTML = jsonObj.description;
        rowObj.childNodes[3].innerHTML = jsonObj.test2;
        rowObj.childNodes[4].innerHTML = jsonObj.id;     
      }//success
    }); 
    });
    });
    </script><table id='tTest' border='1' width='500'>
      <tr><td class='test'>22</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
      <tr><td class='test'>33</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
      <tr><td class='test'>44</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
    </table>
    function __jsonText($array)
    {
       header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
       header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
       header("Cache-Control: no-store, no-cache, must-revalidate");
       header("Cache-Control: post-check=0, pre-check=0", false);
       header("Pragma: no-cache");
       $str = "{";
       foreach($array as $key=> $value)
       {
          $value = str_replace("\"", "\\\"", $value);
          if($str != "{") $str.=",";
          $str .= "$key: " . "\"$value\"";
       }
       $str .= "}";   return $str;
    }
    //查询数据库
    //具体根据ID查询数据库,然后构造一个数组,然后调用__jsonText
    $arrTable = array('name'=>"test1", 'description'=>"description1", 'test2'=>'test3', 'id'=>$_POST['id'] );
    echo __jsonText($arrTable);
      

  8.   

    点击22,33,44,55会查询.
    ie7 ff3测试通过
      

  9.   

    去下载个 jquery.   jquery 使用ajax很方面.  
    然后代码向这样:
    首先加载这个 jquery.js;
    事例如下:(你下个 jquery.js  然后执行下面的应该就知道了)
    <?php
    if($_GET['name']){
    echo '100001';exit;
    }?>
    <html>
    <head>
    <title>test</title>
    </head>
    <script language="JavaScript" type="text/javascript" src="http://127.0.0.1/test/jquery.js"></script>
    <script type="text/javascript">
    function getName(name){
    $.get('?name='+name+'&f='+Math.random(),null,function (msg) {
        if (msg) {
    //alert(msg);
    $('#tel').html(msg);
    }else{
    alert('shibai');
    }
    }
    )
    }
    </script>
    <body>
    <table>
    <tr>
    <Td onclick="getName('name');" id="name">name</Td>
    <td id="tel"></td>
    </tr>
    </table>
    </body>
    </html>
      

  10.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </head>
    <?php 
    include"publiccon.php";                     // 连接数据库$sql="select*from student ";                
    $result=mysql_query($sql);                  //查询全部
    $ss=$_GET['ttdd'];                         //取出td里的姓名做为查询条件
    $sql2="select*from student where name='".$ss."'";
    $result2=mysql_query($sql2);                         //根据姓名查询

    ?>  
    <script language="JavaScript" type="text/javascript" src="jquery.js"> </script> <script type="text/javascript"> 
    function getName(name){ 
    $.get('?ttdd='+name+'&f='+Math.random(),null,function (msg) { 
        if (msg) { 
    //alert(msg); 
    $('#tel').html(msg); 
    }else{ 
    alert('shibai'); 




    </script> 
    <body> 
    <table  width="482" height="136" border="0" >
        <tr>
          <th height="21"><div align="center">姓名</div></th>
          <th width="77" height="32"><div align="center">姓别</div></th>
          <th width="76"><div align="center">年龄</div></th>
          <th width="185"><div align="center">地址</div></th>
          </tr>
     <tr>            //这个tr如果去掉的话就不会显示点击查到的记录******************
          <td id="tel"  bgcolor="#666633"><div align="center"></div></td>
          <td id="tel"  bgcolor="#666633"><div align="center"></div></div></td>
          <td id="tel" bgcolor="#666633"><div align="center"></div></div></td>
          <td id="tel"  bgcolor="#666633"><div align="center"></div></td>
        </tr>  
      <?php
                     
      while($arr2=mysql_fetch_array($result2))   //根据姓名查询显示
            { 
       ?>
      <tr>
      <td id="tel"  bgcolor="#CCCCCC"><div align="center"><?php echo  $arr2["name"];?></div></td>
          <td id="tel"  bgcolor="#CCCCCC"><div align="center"><?php echo  $arr2["sex"];?></div></div></td>
          <td id="tel"  bgcolor="#CCCCCC"><div align="center"><?php echo  $arr2["age"];?></div></div></td>
          <td id="tel"  bgcolor="#CCCCCC"><div align="center"><?php echo  $arr2["address"];?></div></td>
        </tr>  
    <? 

    ?>

    <?phpwhile($arr=mysql_fetch_array($result))        //显示全部信息

    ?>
    <tr>
      <td id="ttdd" onclick="getName('<?php echo  $arr["name"];?>');"  bgcolor="#CCCCCC"><div align="center"><?php echo  $arr["name"];?></div></td>
          <td id="ttdd" onclick="getName('<?php echo  $arr["name"];?>');" bgcolor="#CCCCCC"><div align="center"><?php echo  $arr["sex"];?></div></td>
          <td id="ttdd" onclick="getName('<?php echo  $arr["name"];?>');" bgcolor="#CCCCCC"><div align="center"><?php echo  $arr["age"];?></div></td>
          <td id="ttdd" onclick="getName('<?php echo  $arr["name"];?>');" bgcolor="#CCCCCC"><div align="center"><?php echo  $arr["address"];?></div></td>
        </tr>  
    <?
    }
    ?>
      </table>
    </body> 
    </html>现在的问题是,点击表格的确显示查出了td里的姓名,可显示有问题,按照以上的代码会又重新执行了一次,而且全部挤在同一个td里(而且查出的是全部的记录,不过第一条是点击查出的),就是注释行里有*号的那个tr里的第一个td,然后最下面又有显示全部的记录,就是显示查了两次全部的记录.还有一问题,就是我如果点击的是中文的话就查不到,我把sql2语句打印出来,姓名条件是乱码,怎回事呀,以上代码需改哪里呀,多谢了!不知说得够不够清楚!
      

  11.   

    分两个页面去做。。
    html显示页面.
    ajax处理页面。
      

  12.   

    无语, ie6,7 ff3都测试成功,你竞然说没有反映.
    呵呵.
      

  13.   

    //查询数据库//具体根据ID查询数据库,然后构造一个数组,然后调用__jsonText楼上的把这两个代码写一下吧,可能是我写错了,虚心请教了!
      

  14.   

    本身我哪块没有连接数据库,连接数据库部分自己提供就可以了.
    我只完成了,将id值传给php页面,然后php页面将ID返回.
    这个过程已经完整的走完了,别的部分自己做就行了.不过告诉我你不会调试.
    哪个index.php,你可以单独执行,看打印出来的数据是否为正确的json格式.