亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在jQuery的$.post中function(data)返回的數據,請問要怎么取出來用?

在jQuery的$.post中function(data)返回的數據,請問要怎么取出來用?

桃花長相依 2022-05-18 15:15:00
我在JS函數中寫:function initialize(cc){$.post("some1.php",{value:cc},function(data){alert(data);});alert(data);}我想把變量cc傳到后臺用php處理 然后返回兩個數組但是我想把這兩個數組在js function initialize中分別使用 該怎么做呢像上面那個程序 function(data)里的alert(data)就能顯示 而外面的alert(data)就不行 而且我還想把這兩個數組分別賦給兩個變量 求前輩指點啊
查看完整描述

3 回答

?
翻過高山走不出你

TA貢獻1875條經驗 獲得超3個贊

你把你的數組返回值中間用個符號分割,比如分號["a1","b1"];["a2"',"b2"],然后用split{";"}進行分割就可以分開使用了。
var t = "['a1','b1'];['a2'','b2']";
var ts = t.split(";");
alert(ts[0]);
alert(ts[1]);

下面這個寫法寫錯了
function initialize(cc) {
var html;
$.post("some1.php",{value:cc},function(data){var html=data;},"json");
alert(html);
}
不應該在function(data)里面申明var html,否則html會變成這個方法的體局部變量。你應該改成。
function initialize(cc) {
var html;
$.post("some1.php",{value:cc},function(data){html=data;},"json");
alert(html);
}
但是即便這樣改了,alert(html)仍然是空。
你還沒有搞清楚ajax的邏輯。ajax是異步的。function(data)里的內容是延遲執行,在你最后alert(html)的時候,function(data)還沒有執行,所以alert(html)永遠是空。



查看完整回答
反對 回復 2022-05-23
?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

function initialize(cc) {
var html;
//加上這句
$.ajaxSettings.async=false;
$.post("some1.php",{value:cc},function(data){var html=data;},"json");
alert(html);
}

查看完整回答
反對 回復 2022-05-23
?
白衣非少年

TA貢獻1155條經驗 獲得超0個贊

你在函數外面定義一個變量,然后在function里面把data賦值給這個變量不就OK了么

查看完整回答
反對 回復 2022-05-23
  • 3 回答
  • 0 關注
  • 631 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號