私は、jQueryを使用してテキストボックスの値を取得するためのフォームを用意しました。 document.readyイベントではなく機能外変数宣言の問題
var bdmm = $("#bdmm").val();
、および機能でそれを参照し、テキスト値がnull:問題は、私はこのような変数を宣言した場合です。しかし、関数内で宣言すると、うまく動作します。なぜこれはそうですか?
のjQuery:
これますませ作品:
$(document).ready(function() {
var bdmm = $("#bdmm").val();
$('#submit').click(function(e){
alert(bdmm);
e.preventDefault();
});
});
これは動作します:
$(document).ready(function() {
$('#submit').click(function(e){
alert($("#bdmm").val());
e.preventDefault();
//OR
var bdmm = $("#bdmm").val();
alert(bdmm);
e.preventDefault();
});
});
応答に感謝します。今、私は分かる。ですから、どのようにしてDOM上で変数を宣言し、関数内でそれを呼び出すことができますか?それとも私もそれをするべきですか? – input
@ fuz3dイベントが発生したときに値が気になる場合は、そうしないでください。動的でないものについては、DOMで宣言する必要はありません*しかし、これは変数名を分離し、正しい値が関数内で使用されることを保証する1つの方法です([JavaScript closure](http:// blog .morrisjohns.com/javascript_closures_for_dummies))。 –
私は参照してください。ありがとう。とても有難い。 – input