我是jQuery的新品(真的是一般的javascript),並且正在嘗試編寫一個通用函數來檢查頁面上的所有文本和選擇框以進行輸入,如果返回true或true頁面上的多個框至少包含一個字符,如果沒有,則使用「false」(如果沒有輸入,則使用禁用搜索按鈕)。我寫了下面的功能:jQuery - 在循環中返回控制
function hasUserProvidedInput() {
$('input[type="text"]').each(function() {
if ($(this).val() != '') {
alert("he has");
return true;
}
});
$('select').each(function() {
if ($(this).val() != '') {
return true;
}
});
return false;
}
這樣做的目的是,它會通過所有文本框迭代,並在頁面上選擇框,第二它擊中一個與輸入將控制權返回給調用函數與'true'的值(我把這個函數的keyup事件連接到頁面上的文本框和選擇框中)。如果它遍歷頁面上的所有這些控件,並且沒有找到具有輸入的控件,則它將返回false。
我爲了調試目的添加了警報。該警報正常工作以指示文本框何時包含輸入,但是我的函數始終返回值爲'false'。任何人都可以爲我解釋爲什麼會發生這種情況/我該如何修復它?謝謝。
明白了!感謝您的解釋 – Andrew 2010-08-11 15:00:42