我已經在很多地方看過這個,我可能是個白癡,因爲這樣做很多,但這是我的情況。「等待」ReadyState在返回值前爲4
我想在我的網站IFF電子郵件旁邊的一個電子郵件字段中顯示一個複選框未使用已註冊。
什麼我已經是這樣的:
$('[name=reg_email]').change(function() {
if(!emailUsed()) {
//Update image to be a green checkmark
} else {
//Update image to be a huge red X
}
}
而我的「emailUsed」功能應當根據電子郵件地址是否是在數據庫中返回一個JavaScript布爾變量。爲了實現這一點,我創建了一個腳本來確定它是否存在。所以emailUsed()函數只需要調用腳本和回報,但我需要等到的readyState == 4我回來之前,所有的我已經找到了等待的readyState等於4的方法阻止我返回值在所有:
function emailUsed() {
var req = $.get('scripts/email_used.php?email='+$('[name=reg_email]').val());
//Wait for req.readystate to be 4
return req.responseText == 'True';
}
但我無處可以找到解釋如何做到這一點,仍然返回一個值的東西。似乎一切都使用回調函數,這和那,但我不能讓這個方法返回一個值。
幫助,請!
太好了!謝謝。這本來對我來說有點困惑,但我明白了。 – TigerTrussell 2010-12-02 22:06:31