0

我想知道是否有办法在保持在同一页面上的同时使用 GET 变量。

如果单击特定链接,我想使用 GET 变量执行一些 php/mysql 脚本。但是,一旦单击链接,我不希望页面上的任何内容发生变化,我只想让脚本在幕后运行。

现在,当用户在搜索页面上并将项目添加到他们的收藏夹时,所有搜索结果都会消失,并且 b/c 我正在重新提交

注意:下面的添加到收藏链接,链接到用户单击它时将进入的同一页面。

if(isset($_SESSION['username'])){
     echo '<div id="favbutton"><a href="search.php?id='.$id.'"><img src="./image/staricon.png"/>Add to favorites</a></div>';
}

谢谢你

4

3 回答 3

1

jQuery 有一个 .get() 函数,您可以使用它来完成此操作: http: //api.jquery.com/jQuery.get/。您可以使用它将任意数量的 GET 参数传递给您的服务器端脚本。如果该脚本返回任何数据,您可以实现回调以确定如何处理数据。

这是使用 jQuery .get() 的示例。jQuery 范例之一是“不显眼的 JavaScript”,因此在自己的脚本中而不是在过时的 onclick 属性中添加事件处理程序是标准的。也就是说,这是一个示例实现:

jQuery(document).ready(function($) {
    $(".clickable").click(function(e) { // Gets all elements with a class of "clickable"
        $.get("myScript.php",
            { myGETVar: $(this).attr("src") }, // Passes the "src" of the clicked element as "myGETVar"
            function(returnedData) {
                alert("The script returned: " + returnedData);
            }, "html" // In this case we're expecting the script to return html
        );
    });
}

这只是一个简单的示例,但它演示了如何将单击处理程序附加到任意数量的元素(在本例中为具有类“可单击”的元素)并创建 ajax 请求。这个例子传递了被点击元素的“src”(假设你想将它与图像一起使用)并将它作为 GET 变量“myGETVar”传递给 myScript.php。

我希望这有帮助!

于 2012-05-10T14:22:29.223 回答
0

您可以使用 ajax(仅限 JavaScript)或jQuery get来执行此操作。

于 2012-05-10T14:21:31.783 回答
0

你必须使用 AJAX,你可以使用jQuery.Ajax轻松地做到这一点

您必须在服务器脚本中静默调用以将其添加到收藏夹,然后向用户显示成功消息。

于 2012-05-10T14:24:31.733 回答