作者ot32em (reverse(wasefo);)
看板Ajax
標題[ js ] 有關 function return string的問題
時間Sat May 8 13:44:55 2010
$(document).ready(function(){
...
function accountCheck(a){
if( a.length < 3 ) return 'short';
if( a.length > 11) return 'long';
$.post('fetch.php', { "type":"ncuaccount", "email": 'someemail'
, "week": '30'}
, function(data){ alert(data);return data; } );
}
綠色的可以回傳資料
可是在下面我alert result時
卻是undefined or 空字串
這會是因為.post要等 然後 function accoutnCheck(a) 等不及就return的關係嗎?
$('
#register_submit').click(function(){
var acc = $('
#register_account').val();
var result = "";
result = accountCheck( acc );
alert(result);
...
});
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.62.77.187
1F:→ grence:ajax就是非同步啊.... 05/08 16:26
2F:→ j100002ben:你用匿名函式return給jQuery的post方法他要回傳什麼? 05/08 22:24
3F:→ j100002ben:var一個外部(靜態)變數取存資料吧 05/08 22:25
4F:→ j100002ben:TO:1F,樓主的問題和非同步沒有關係..... 05/08 22:25
5F:→ j100002ben:function accountCheck(a){ 05/08 22:29
6F:→ j100002ben: if( a.length < 3 ) return 'short'; 05/08 22:29
7F:→ j100002ben: if( a.length > 11) return 'long'; 05/08 22:29
8F:→ j100002ben: var return_data; 05/08 22:29
9F:→ j100002ben:$.post('fetch.php', { "type":"ncuaccount", "email": 05/08 22:29
10F:→ j100002ben: 'someemail', "week": '30'} 05/08 22:30
11F:→ j100002ben:, function(data){ alert(data);return_data=data;}); 05/08 22:30
12F:→ j100002ben: return return_data;} 05/08 22:31
13F:→ ot32em:我有用一個外部存過 好像也是GG 我在$.post上有令個var r; 05/09 17:26
14F:→ ot32em:後來也是UNDEFINED 05/09 17:26