在停留在同一页面时使用get变量?

时间:2012-05-10 14:20:30

标签: php jquery

我想知道是否有办法在停留在同一页面时使用GET变量。

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

现在,当用户在搜索页面上并将项目添加到他们的收藏夹时,所有搜索结果都会消失,而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>';
}

谢谢

3 个答案:

答案 0 :(得分: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。

我希望这有帮助!

答案 1 :(得分:0)

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

答案 2 :(得分:0)

您必须使用AJAX,并且可以使用jQuery.Ajax

轻松完成

您必须以静默方式将呼叫放入服务器脚本,以将其添加到收藏夹,然后在成功时向用户显示消息。