Javascript JQuery$.ajax未发布多个变量

Javascript JQuery$.ajax未发布多个变量,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,大家好,我有一个在链接上调用的函数:onclick(),但出于某种原因,$.ajax什么都不做-甚至剥离了我的php代码,只转储了$\u POST var,但我仍然没有从该函数得到任何反馈-我得到的只是警报消息-它也只是用于测试目的 在那里打电话: <a href="'.dirname($_SERVER['PHP_SELF']).'?'.$_SERVER['QUERY_STRING'].'&&act=Save " onclick="saveMyGame()">Save

大家好,我有一个在链接上调用的函数:onclick(),但出于某种原因,$.ajax什么都不做-甚至剥离了我的php代码,只转储了$\u POST var,但我仍然没有从该函数得到任何反馈-我得到的只是警报消息-它也只是用于测试目的

在那里打电话:

<a href="'.dirname($_SERVER['PHP_SELF']).'?'.$_SERVER['QUERY_STRING'].'&&act=Save " onclick="saveMyGame()">Save</a>

function saveMyGame(){

        var usern       = $('#usern').attr('value');
        var usrPoints   = $('#userPoints').attr('value');
        var usrLevel    = $('#userlevel').attr('value');

        var saveState   = this.imgPath;
        alert('Saving your game: '+usern+' Points: '+usrPoints+' Level: '+usrLevel+' state phase: '+saveState);
        e.preventDefault();
        var svGame = {act:'saveGame',user:usern, Points:usrPoints, Level:usrLevel, saveGState:saveState}    ;

            $.ajax({
                    url: "game/lib/updateGame.php",
                    type: "POST", 
                    cache: false, 
                    data: svGame, 
                    dataType: "html", 

                    success: function(svGame) {
                        $(".traget").html(svGame).fadeIn('slow');
                    }
                }); 

    }

函数saveMyGame(){
var usern=$('#usern').attr('value');
var usrPoints=$('#userPoints').attr('value');
var usrLevel=$('#userlevel').attr('value');
var saveState=this.imgPath;
警报('保存游戏:'+usern+'点数:'+usrPoints+'级别:'+usrLevel+'状态阶段:'+saveState');
e、 预防默认值();
var svGame={act:'saveGame',user:usern,Points:usrPoints,Level:usrLevel,saveGState:saveState};
$.ajax({
url:“game/lib/updateGame.php”,
类型:“POST”,
cache:false,
资料来源:svGame,
数据类型:“html”,
成功:功能(svGame){
$(“.traget”).html(svGame.fadeIn('slow');
}
}); 
}
假设PHP代码检查act,然后验证是否传递了所有必需的信息,然后处理请求或显示错误消息

<?php
if(isset($_POST['act']) && $_POST['act'] == 'saveGame') {
//Process save game request
/*if(isset($_POST['user']) && isset($_POST['userPoints']) && isset($_POST['userLevel']) && isset($_POST['saveGState']) ) {
    $Game->saveGame();
    echo'<br>....'.$_POST['user'];
} else {
    echo 'Please provide correct information for saving...';
}
*/
echo var_dump($_POST);
}

ajax请求中的Url具有相对路径
Url:“game/lib/updateGame.php”
,Url开头没有斜杠,如
Url:“/game/lib/updateGame.php”

因此,如果您的页面地址与根地址不同(例如),则可能会出现完整路径,因此不会执行服务器方法。

您是否收到任何Javascript错误?请检查js控制台以查看发送到服务器的内容。
PHP代码假设选中act
,您在代码中的哪里选中了
act
$(“.traget”)或
$(“.target”)
我不确定,但
e.preventDefault
是否有错误?您没有定义“e”变量。
dataType
是服务器返回的类型,它在
数据方面没有优点。