[問題] JQuery 等待事件完成

看板Ajax作者 (看文不要只會用橫的看)時間14年前 (2011/09/07 10:06), 編輯推噓1(105)
留言6則, 4人參與, 最新討論串1/2 (看更多)
一直以來用 Jquery 很方便。 但是有個問題常困擾我。 例: <input type = "text" id = "someid"> $("#someid").show(); var tmpvar = $('#someid').val(); $.get('somefile',{ id:tmpvar } 我的用意是讓執行時顯示出一個蓋住畫面的訊息輸入框(上面用簡單的意思表示) 然後讓使用者輸入資料。再把得到的這個結果送到somefile去。 有點像prompt()那樣,只是表單複雜的多。不是單一文字輸入元素 當然上面的不會跑,因為$('#someid').show()後馬上會執行 var tmpvar=....那行。 再接著就$.get了。 有任何方法可以讓程式停下來等使用者把表單填完按下特定按鈕後才繼續嗎? 或是我方法根本想錯方向? 之前用.diablog API 也遇到一樣的問題,不過那次是用POST送表單所以還好解決。 這次我就頭大了。 -- 小惡魔的家 http://blog.pixnet.net/shiuju/ -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.251.237.155 ※ 編輯: averywu 來自: 60.251.237.155 (09/07 10:09)

09/07 10:41, , 1F
要改用callback設計思維。
09/07 10:41, 1F

09/07 10:42, , 2F
這題在js可以說是無解,js就是都靠callback做事
09/07 10:42, 2F

09/07 11:25, , 3F
對阿 把tmpvar 還有$.get 都寫在show的callback就解決了吧
09/07 11:25, 3F

09/07 11:29, , 4F
在callback 必須要有一個確認欄位填完的機制
09/07 11:29, 4F

09/07 12:10, , 5F
你應該了解一下 "事件驅動"
09/07 12:10, 5F

09/07 15:44, , 6F
你的 $.get('somefile') 應該綁在送出表單的按鈕上吧
09/07 15:44, 6F
文章代碼(AID): #1EPj6h79 (Ajax)
文章代碼(AID): #1EPj6h79 (Ajax)