未定义的元素

时间:2013-02-24 21:02:29

标签: javascript html ajax django

我正在尝试构建一个简单的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。

2 个答案:

答案 0 :(得分:1)

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

$.post("/main3/", {username: $("[name=username]").val()},

答案 1 :(得分:1)

您的代码中没有ID为username的元素。您的输入元素的 NAME username。 name与id不同。

<input type="text" id="name" name="name" />
                  ^^^^^^^^^^--missing