2
我從POST方法得到響應。 裏面我看到的值,但POST方法後返回一個空值。 爲什麼要修復此問題?jquery,POST方法的響應
樣本:
$.post('/news/add/', {parent: name, title: 'none'}, function(data){
new_id = data;
alert(new_id); //11
});
alert(new_id); //empty
我從POST方法得到響應。 裏面我看到的值,但POST方法後返回一個空值。 爲什麼要修復此問題?jquery,POST方法的響應
樣本:
$.post('/news/add/', {parent: name, title: 'none'}, function(data){
new_id = data;
alert(new_id); //11
});
alert(new_id); //empty
因爲你正在異步調用的代碼是按以下順序運行:
1 - $.post('/news/add/', {parent: name, title: 'none'}, function(data){
3 - new_id = data;
4 - alert(new_id); //11
});
2 - alert(new_id); //empty
您只能使用您的文章的回調函數內返回的值。
唯一的另一種方法是使請求同步。但是這並不建議,因爲它可以鎖定等待響應的瀏覽器。
你也許想用.complete或.success方法:由於AJAX調用的異步性的 http://api.jquery.com/jQuery.post/#jqxhr-object
。 –
new_id在哪裏申報?或者你是不是用'var'聲明它? – StuperUser
[爲什麼我的JavaScript函數沒有填充我的數組?](http://stackoverflow.com/questions/7377970/why-is-my-javascript-function-not-populating-my-array) –