点击jquery链接运行php文件


Run php file through jquery link click

我无法让它工作,页面已经有其他jquery函数运行得很好了,所以我知道jquery正在工作(jplayer和lazylod工作得很好)

这是我的javascript函数:

<script type="text/javascript">
function upone() {
    $.get("upone.php");
    return false;
}
</script>

这是我的链接

<a href="#" onclick="upone();">Like</a>

我的php文件"upone.php是:

<?php
include("include/config.php");
include("include/functions/import.php");
if(isset($_SESSION['USERID'])&&$_SESSION['USERID']>=0&&is_numeric($_SESSION['USERID']))
{
    $USERID=$_SESSION['USERID'];
    $query="INSERT INTO audio_like SET USERID='".mysql_real_escape_string($USERID)."'";
    $result=$conn->execute($query);
}
?>

php文件运行良好,如果我手动链接到它,点击链接也会导致页面刷新,并将#添加到页面中。有什么想法吗?

编辑:误解问题

使用下面的代码可以解决单击链接后页面刷新的问题。之前发生这种情况的原因是onclick属性没有返回false,换句话说,这将是正确的代码:<a href="#" onclick="return upone();">Like</a>。下面的代码做了同样的事情,但结构稍微好一点。

HTML:

<a id="like" href="#" >Like</a>

JS:

$("#like").click(function(){
   $.get("upone.php");
   return false;
});

与其使用内联javascript,不如尝试这样做。

给"赞"链接一个类,例如:

<a href='#' class='likeLink'>Like</a>

使用以下内容代替当前部分:

<script>
    $(function() {
        $('.likeLink').click(function() {
            $.get('upone.php', function(data) {
                alert("Server Returned: " + data);
            });
            return false;
        });
    });
</script>

如果警报消息返回了您对PHP页面的期望,那么您可以将其注释掉以供生产使用。

顺便说一句,我今天很久以前就把这个打出来了,忘了我正在处理。很抱歉,如果已经解决了。