6

我正在尝试将表单数据发送到当前页面以使用 jQuery 进行变量处理。当我发送 POST 请求时,服务器会收到一个 GET 请求,并且我的 URL 会更改以匹配该 GET。我知道如果我不隐式使用 jQuery 会自动转到 GET 请求type: "POST",但我相信这就是我正在做的事情。任何帮助,将不胜感激。

<script>
    function addadomain(){
        $.ajax({
            type: "POST",
            url: "domains.php",
            data: $("#domainform form").serializeArray(),
            success: function() {
                $("#domainlist").load("domains.php #domainlist");
                $.ajaxSetup({ cache: false });
            }
        });
        return false;
    };
</script>

<a id="displayText" href="#" onclick="toggle();" >Add Domains</a> 

<div id="toggleText" style="display: none">
    <form name="adddomain" id="domainform" autocomplete="on">
        <input type="hidden" name="userid" id="userid" value="<?PHP echo $loggedInUser->user_id; ?>" />

        Domain: <input type="text" name="domain" id="domain" required="required" /><br />
        Keyword: <input type="text" name="keyword" id="keyword" required="required" /><br />
        Facebook Url: <input type="text" name="facebook" id="facebook" /><br />
        Twitter Url: <input type="text" name="twitter" id="twitter" /><br />
        Analytics ID#: <input type="text" name="analytics" id="analytics" /><br />
        Blogspot Url: <input type="text" name="blogspot" id="blogspot" /><br />

        <input type="submit" onclick="addadomain()" id="submit" value="submit" />
    </form> 
</div>
4

1 回答 1

8

你可能需要做:

e.preventDefault()

http://api.jquery.com/event.preventDefault/

加载页面时,您的提交不会在您的 ajax 调用之上执行其默认操作...此外,您可以在表单标签中添加表单操作action="post"

于 2012-05-22T20:44:22.030 回答