0

假设我列出了一个带有如下链接的行列表:

内容.php

/*DATABASE CONNECTION AND SQL STUFF*/

<div id='content'>

  <?php 

    $sql = mysql_query ("SELECT id, somedata FROM myTable");

    while ($row = mysql_fetch_assoc($sql)) {

    echo "<a href='?p=moreData&id=" . $row['id'] . "'>" . $somedata . "</a><br />\n";

    }

  ?>

</div>

更多数据.php

<?php

  $id = $_GET['id'];

  /* SQL STUFF */

  echo "More information about" . " ". $somedata. " " . "wich has an id of" . " " . $id;

如何使用在文件中moreData.php调用的新 div 中加载 $_GET 信息而不是加载新页面?<div id='ajaxContent'>content.php

我已经阅读了一些关于 jQuery 加载的内容,但我对 jQuery 编码非常陌生,我自己无法弄清楚......

4

1 回答 1

1

您需要使用要通过 GET 发送到 moreData.php 的 id 预设一个 javascript var rowId。我会将它设置为标签的 rel 属性,并在我处理点击事件时获取它。

echo "<a class='ajaxCall' rel='" . $row['id'] . "' href='?p=moreData&id=" . $row['id'] . "'>" . $somedata . "</a><br />\n";

然后点击事件

$('a.ajaxCall').click(function() {
  var rowId = $(this).attr('rel');
}); 

在同一事件中,ajax 调用

$.ajax({
  type: "get",
  url: '/moreData.php', // your uri to the moredata
  data: { id: rowId },
  success: function(data) { // data is the response of the ajax call
    $('#ajaxContent').html(data);
  }
}); 

你需要 jQuery 库。

于 2012-05-29T15:12:04.163 回答