使用jquery将GET请求发送到同一页面

时间:2016-11-11 13:47:30

标签: javascript php jquery ajax

让我们说有一个PHP代码

page.php文件

<a href="page.php?pid=1" id="1">Product 1</a>
<a href="page.php?pid=2" id="2">Product 2</a>

<?php 
$_GET['pid'];
if(!isset($_GET['pid'])){
    $stmt=$mysqli->prepare("SELECT * FROM products WHERE id=?");
    $stmt->bind_param("i",$_GET['pid']);
    $stmt->execute();
?>
<table>
    <tr><td>*show products code*</td></tr>
</table>
<?php } ?>

现在我在想什么是有任何解决方案,当我点击锚标签时,页面不会刷新而是停留在那里并将值发送到$_GET['pid'];

我想到的一点jquery ajax部分就是这个

$('a').click(function()
{
    $.ajax(
    {
        url: 'page.php',
        method: 'GET',
        data: $(this).attr('id').serialize(),
    });
});

它不起作用,我不完全理解如何将数据发送到$_GET['pid']

任何有关解释的帮助都会很乐意帮助我...

1 个答案:

答案 0 :(得分:1)

你可以做到

$('a').click(function(event){
   $.ajax({
      url: 'page.php?pid=' + $(this).attr('id'),
      method: 'GET'
   });
  event.preventDefault();
});

$('a').click(function(event){
   $.ajax({
     url: $(this).attr('href'),
     method: 'GET'
   });
   event.preventDefault();
 });

PS我推荐这样的codestyle,因为js解释器放了“;”:

相关问题