无法从输入文本中获取文本值

时间:2017-01-13 19:53:58

标签: javascript

当我尝试从输入文本中获取文本值时,返回的值为" undefined"。此函数返回:"用户名:undefined"我的输入文字有一个值。

this.loadForm = function() {

        $("#response-container").load("formLogin.php", function() {

            $("#formLogin").submit(function(event) {

               var user = $("#username").val();

                alert("username: "+user);

                event.preventDefault();    

            });

        });

    }; //END loadForm FUNCTION

formLogin.php

<form id="formLogin" method="get" action="20.html">
    USERNAME:
    <br>
    <input type="text" name="username" />
    <br> PASSWORD:
    <br>
    <input type="password" name="password" />
    <br>

    <br>
    <input type="submit" value="Log in" name="login" id="btnInputLogin" onsubmit="return false" />
</form>

4 个答案:

答案 0 :(得分:1)

检查您的选择器

如果您在jQuery中使用id语法,则需要使用$('#id')属性,因为#表示您明确定位了具有id属性的元素在#字符后面跟着:

<input type="text" id='username' name="username" />

如果您想通过名称引用某些内容,则需要使用an attribute equals selector明确定位name属性:

var user = $('[name="username"]').val();

答案 1 :(得分:1)

#username没有输入。添加id属性或使用

$('input[name="username"]')

答案 2 :(得分:1)

替换:

<input type="text" name="username" />

<input type="text" name="username" id="username"/>

答案 3 :(得分:0)

在这里看起来像你的jquery:$("#username").val();正在尝试获取一个不存在的ID。

您可以在密码输入<input id="password">中添加一个应该有效的ID。

或者您可以使用当前名称$('[name="password"]').val()

获取它