作者averywu (看文不要只会用横的看)
看板Ajax
标题[问题] JQuery 等待事件完成
时间Wed Sep 7 10:06:32 2011
一直以来用 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)
1F:→ TonyQ:要改用callback设计思维。 09/07 10:41
2F:→ TonyQ:这题在js可以说是无解,js就是都靠callback做事 09/07 10:42
3F:→ sk1765:对阿 把tmpvar 还有$.get 都写在show的callback就解决了吧 09/07 11:25
4F:→ sk1765:在callback 必须要有一个确认栏位填完的机制 09/07 11:29
5F:推 ChowMein:你应该了解一下 "事件驱动" 09/07 12:10
6F:→ tyf99:你的 $.get('somefile') 应该绑在送出表单的按钮上吧 09/07 15:44