[問題] 等待上個工作完成

看板Ajax作者 (看文不要只會用橫的看)時間14年前 (2011/03/30 03:46), 編輯推噓3(303)
留言6則, 5人參與, 最新討論串1/2 (看更多)
一直以來都有個問題,但總想拐彎過改流程來逃避。 但總覺得一定有法子處理的。 我問題是某一元素綁定事件後,當事件觸發的程式碼部份未完成時(AJAX),怎麼讓 下面的等它完成再執行? 例: $("#mycombobox").bind('change',function(){ $.get('myquery.php',{ id : x },function(data){ if(data!="false"){ $("#mydiv").html(data); } } var tid = "#"+x; $(tid).attr('selected',true); }) 黃色那段是不會有作用的,我知道尚未出現的元素綁定事件是用live(),但 尚未出現的元素賦值就很頭大,有沒有什麼方式讓黃色那行可以等$.get完成後 再執行呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.124.142.152

03/30 04:17, , 1F
get 不是有complete的callback可以叫嗎?
03/30 04:17, 1F

03/30 06:36, , 2F
黃色就寫在$("#mydiv").html(data);下一行就好啦
03/30 06:36, 2F
我問題沒描述清楚,實事上,黃色那行所要加入selected屬性的元件,正是 由該事件中$.get回來的,所以$.get還沒完成時,程式依然會進行到黃色那行, 然後就什麼事都不會發生。因為那個HTML元素還在$.get中,或剛GET回來。 我想問的是類似如此的情況,是否有什麼方式請JQuery或javascript等一下。 例: $.somefunction().finish(Do something...) 之類的做法。 ※ 編輯: averywu 來自: 59.124.142.152 (03/30 07:46)

03/30 12:41, , 3F
1F
03/30 12:41, 3F

03/30 21:18, , 4F
我覺得 1.2樓的推文就是答案了 @@a
03/30 21:18, 4F

03/31 00:29, , 5F
所以我推 1F XD
03/31 00:29, 5F

03/31 03:17, , 6F
可是我接在下行沒效耶...
03/31 03:17, 6F
文章代碼(AID): #1DaZSpYv (Ajax)
討論串 (同標題文章)
文章代碼(AID): #1DaZSpYv (Ajax)