Javascript 搜索后预加载屏幕?
我的主页上有一个搜索框flight search(类似于) 当您在中搜索时,您将看到一个“我们正在搜索符合您要求的航班。 请稍候。。。 “屏幕我没有,我希望在我的网站上有一个类似的屏幕 问题是,当我在主页上单击“搜索”时 我正在使用javascript提交表单Javascript 搜索后预加载屏幕?,javascript,jquery,ajax,preloader,Javascript,Jquery,Ajax,Preloader,我的主页上有一个搜索框flight search(类似于) 当您在中搜索时,您将看到一个“我们正在搜索符合您要求的航班。 请稍候。。。 “屏幕我没有,我希望在我的网站上有一个类似的屏幕 问题是,当我在主页上单击“搜索”时 我正在使用javascript提交表单 document.flight_search.action = 'php/flt-show-availability.php?&s=1&Sort=P'; document.flight_search
document.flight_search.action = 'php/flt-show-availability.php?&s=1&Sort=P';
document.flight_search.method = 'post';
document.flight_search.submit();
如何创建与旅行包中类似的加载屏幕。您可以重定向到结果页面,将结果列表隐藏在包含加载消息的div后面。然后通过javascript(ajax或类似的)接收结果,并在后台构建列表
当服务器完成搜索时,您的请求完成,您可以隐藏包含加载消息的div(例如在回调函数中)。在jQuery中,将显示屏幕,并在ajax调用(通知应用程序生成结果)完成后转发,非常类似于:
$('.search').click(function(event){
event.preventDefault();
$('#loadAnimationWrapper').show();
$.ajax({
cache: false,
async: false,
type: 'GET',
url: '/your/callback/url',
success: function(data) {
// your forwarding code
}
});
});
但在我看来,您给出的示例页面存在一个问题,即显示的内容没有在url中表示,因此,例如,您不能将url提供给其他人,让他查看结果
因此,ajax魔术-当然可以,但要小心。好吧,您可以通过ajax请求发送表单并等待答复。 等待时显示加载程序 如果请求成功,您可以做出不同的反应: -替换内容 -转到生成的输出页面