0

我正在尝试构建一个简单的 AJAX POST。它由用户名和密码组成。用户提交数据后,我的 html 中的用户名元素仍未定义。可能是什么问题呢。这是我的代码。

<html>

<head>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
    <script>
        $(document).ready(function () {

            $("#form").bind('click', function (event) {

                alert(username = $("#username").val())
                event.preventDefault();

                $.post("/main3/",

                username = $("#username").val(),

                function (data) {

                    alert(data);

                    $('#content').html(data)

                })
                return false;
            });


        });
    </script>
</head>

<body>
    <form id="form">Name
        <input type="text" name="username" />
        </br>Age
        <input type="text" name="age" />
        </br>
        <input type="submit" />
    </form>
    <div id="content"></div>
</body>

我已将整个页面包含在内以供参考。我的服务器是 Django。

4

2 回答 2

1

您传递参数不正确,将其作为对象传递,并为要选择的元素使用正确的选择器以获取其值(没有 id 为用户名的元素)

$.post("/main3/", {username: $("[name=username]").val()},
于 2013-02-24T21:03:56.137 回答
1

您的代码中没有 id 的元素username。您有一个名称为的输入元素username。name 与 id 不同。

<input type="text" id="name" name="name" />
                  ^^^^^^^^^^--missing
于 2013-02-24T21:05:08.003 回答