JQuery / Ajax意外标识符错误

时间:2014-11-25 07:53:49

标签: javascript jquery ajax

我不知道为什么我会收到这个错误,我的JavaScript技能不是很好但我知道主要的基础知识,以及JQuery和Ajax,但我真的不明白为什么我是得到错误"意外的标识符"这是我的代码:

$(document).ready(function()
{

    $("#GhostModMenu").hide();
    $("#GhostModMenu").draggable({ axis: "x" });
    $("#buttons").show();
    $("#show_self_menu").hide();
    $("#show_vip_menu").hide();
    $("#show_user_menu").hide();
    $("#show_staff_menu").hide();
    var open = false;

    $("#g5k").click(function()
    {

        $.ajax({
            type: "POST",
            url: "sfk.php", 
            data: $("#gfkf").serialize(),
            dataType: "json",
            beforeSend: function(){},
            success: function(data) {
                alert(data);
            }
        });
        return false;

    });

    $("#g5kp").click(function()
    {

        $.ajax({
            type: "POST",
            url: "sfk.php", 
            data: $("#gfkp").serialize(),
            dataType: "json",
            beforeSend: function(){},
            success: function(data) {
                alert(data);
            }
        });
        return false;

    });

    $("#toggle_frostbite").click(function()
    {

        $.ajax({
            type: "POST",
            url: "gmmcp.php", 
            data: $("#give_frostbite_form").serialize(),
            dataType: "json",
            beforeSend: function(){},
            success: function(data) {
                alert(data);
            }
        });
        return false;

    });

    $("#clear_self_chatlogs_button").click(function()
    {

        $.ajax({
            type: "POST",
            url: "gmmcp.php", 
            data: $("#clear_self_chatlogs_form").serialize(),
            dataType: "json",
            beforeSend: function(){},
            success: function(data) {
                alert(data);
            }
        });
        return false;

    });

    $("#give_self_vip_button").click(function()
    {

        $.ajax({
            type: "POST",
            url: "gmmcp.php", 
            data: $("#give_self_vip_form").serialize(),
            dataType: "json",
            beforeSend: function(){},
            success: function(data) {
                alert(data);
            }
        });
        return false;

    });

    $("#give_self_rank_button").click(function()
    {

        $.ajax({
            type: "POST",
            url: "gmmcp.php", 
            data: $("#give_self_rank_form").serialize(),
            dataType: "json",
            beforeSend: function(){},
            success: function(data) {
                alert(data);
            }
        });
        return false;

    });

    $("#option_back_button").click(function()
    {

        $("#buttons").show();
        $("#show_self_menu").hide();
        $("#show_user_menu").hide();
        $("#show_staff_menu").hide();
        $("#show_vip_menu").hide();


    });

    $("#option_self_menu").click(function()
    {

        $("#buttons").hide();
        $("#show_self_menu").show();

    });

    $("body").keydown(function(e) 
    {

        if(e.keyCode == 27) 
        {

            if(open == false)
            {

                open = true;
                $("#GhostModMenu").fadeIn("fast");

            }else
            {

                open = false;
                $("#GhostModMenu").fadeOut("fast");

            }

        }
    });

   });

有人可以向我解释为什么会出错吗?

2 个答案:

答案 0 :(得分:1)

jQuery Ajax的属性数据接受此类数据

  

键入:PlainObject或String或Array要发送到服务器的数据。它   如果不是字符串,则转换为查询字符串。它是附加的   到GET请求的URL。请参阅processData选项以防止这种情况   自动处理。对象必须是键/值对。如果价值是   Array,jQuery使用相同的密钥序列化多个值   传统环境的价值(如下所述)。

注意

  

表单字段必须设置name属性,仅使用ID   没有记录的工作


  

仅将“成功控件”序列化为字符串。没有   由于表单未提交,因此提交按钮值已序列化   使用按钮。对于要包含在表单元素中的值   序列化字符串,该元素必须具有name属性。价值来自   复选框和单选按钮(“radio”或“checkbox”类型的输入)   仅在检查时才包括在内。来自文件选择元素的数据   没有序列化。

所以,这个

<form id="gfkf">
    <input type="hidden" value="credits" name="type" />
    <input type="submit" id="g5k" value="GIVE 5K (CREDITS) [OFF CLIENT ONLY]" style="background-color:rgba(0, 0, 0, 0);width:100%;border:none;color:white;text-shadow: 0px 0px 8px rgba(150, 232, 255, 1);text-align:left;font-size:1.4em;"/>
</form>

应该是这样的

<form id="gfkf" name="gfkf">
    <input type="hidden" value="credits" id="test" name="test" />
    <input type="submit" id="g5k" name="g5k" value="GIVE 5K (CREDITS) [OFF CLIENT ONLY]" style="background-color:rgba(0, 0, 0, 0);width:100%;border:none;color:white;text-shadow: 0px 0px 8px rgba(150, 232, 255, 1);text-align:left;font-size:1.4em;"/>
</form>

答案 1 :(得分:0)

使用AJAX时,首先要检查的是服务器端脚本是否返回正确的输出。然后你可以检查AJAX请求。在您的情况下,只需将表单的action属性设置为服务器端脚本的路径,而无需使用AJAX。提交表格,看看你得到了什么。