2017-01-13 25 views
-1

になります。返される値は「未定義」です。この関数は "username: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> 
+0

あなたは名前がID、申し訳ありませんでしたし、感謝ああ私は何のnoob、私が考えていた –

+0

@u_mulder username' ID 'を持つ要素を持っていません助けてよろしいですか? –

答えて

1

#は、明示的であることを示しているとあなたはjQueryので$('#id')構文を使用している場合はid属性を使用する必要があなたのセレクタ

をチェック#文字に続いてid属性を持つ要素をターゲットに設定します。

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

名前で何かを参照したい場合は、明示的にname属性をターゲットにan attribute equals selectorを使用する必要がありますが:

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

ニースキャッチ、私はそれを感謝します。 –

+0

私は気を散らされ、申し訳ありませんでした、ありがとう! –

1

#usernameと入力がなかったです。そのid属性を追加したり、交換してください

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

おかげで、愚かな間違い。 –

1

を使用するか:

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

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

ありがとう、noob間違い! –

0

ためにここにあなたのjqueryのように見える:$("#username").val();は存在しないIDを取得しようとしています。

パスワード入力に<input id="password">というIDを追加しても問題ありません。

それとも、現在の名前でそれを得ることができます$('[name="password"]').val()

関連する問題