1

入力フォームとボタンを含むHTMLがあります。

<input id="nameField" type="text">
<input id="submitBtn" type="button" value="Submit">

そしてスクリプト:

$(function() {
    var name = $('#nameField').val();

    var data = {
        name: name
    }

    $('#submitBtn').click(function() {
        alert(data.name);
    });
});

フィールドにテキストを入力してボタンをクリックします。ただし、アラートは空であり、コンソールにエラーはありません。

4

2 に答える 2

8

dataこれは、ユーザーがテキストを入力するずっと前に、ドキュメントの準備ができたらすぐに初期化するためです。

出来るよ :

$(function() {
    $('#submitBtn').click(function() {
       var name = $('#nameField').val();
       var data = {
          name: name
       };
       alert(data.name);
    });
});
于 2012-10-26T09:36:46.563 に答える
3
$(function() {
$('#submitBtn').click(function() {
var name = $('#nameField').val();

var data = {
    name: name
}
    alert(data.name);

});

});

ページが読み込まれたときではなく、ノードをクリックしたときのフィールドの現在の値が必要です。「data」オブジェクトをグローバル(window.data)変数として宣言し、「click」関数で「name」値を変更するだけです。

于 2012-10-26T09:40:27.383 に答える