是否有一個原因,該代碼:jQuery函數不改變全局變量,而常規的JavaScript功能做
var verb = "";
function printPage (input) {
$("div").append(input + "<br>");
}
$("#submit").click(function() {
verb = $('#enter').val();
printPage(verb);
});
printPage(verb);
只導致#進入(形式)在click事件被記錄一次的值(而最後的PrintPage打印原有空字符串),而該代碼:
var verb = "";
function printPage (input) {
$("div").append(input + "<br>");
}
function buttonClick() {
verb = "verb!";
printPage(verb);
}
buttonClick();
printPage(verb);
打印動詞兩次,因爲功能已成功地改變了動詞變量的值?很抱歉,如果我沒有足夠好地解釋我的問題,我會在需要時詳細說明。
try without var ... like verb =「」;如果你不得不做任何全球性的事情,那麼不要使用var。 – Rahul
傳遞給'$(「#submit」).click(...)'的函數將在您單擊按鈕時觸發* only *。而在第二種情況下,由於您明確調用了'buttonClick()',它會記錄兩次。 – techfoobar
#enter是輸入還是html標記? – Sweetz