【问题标题】:Wait page in search in symfony2? [closed]在 symfony2 中等待页面搜索? [关闭]
【发布时间】:2017-04-11 13:25:50
【问题描述】:

我正在做一个搜索引擎,我想在搜索时制作一个等待页面,就像航空公司的网站在寻找可用性时一样?有任何想法吗 我正在使用 Symfony2

【问题讨论】:

标签: javascript php html symfony search


【解决方案1】:

您的问题不准确,但我认为您可以如下安排:

  1. 准备您在网络上任何位置包含的搜索表单
  2. 在 Symphony 中准备搜索方法并单独路由到该方法。此方法应返回 JSON 结果。

要在有人使用搜索表单后接管请求和响应的控制权,您需要接管提交事件并将其更改为 AJAX 请求。例如,您可以这样做(使用 JQuery):

        $('body').on('submit', '#search_form', function (e) {
            e.preventDefault();
            loaderSwitch('on');

            $.ajax({
                type: 'POST',
                url: searchservice_url_here,
                data: serialized_entry_data_here
            })
            .done(function (data)
            {
                $('#result_place').html(
                    renderResults(data);
                );
                loaderSwitch('off');
            })
            .fail(function (jqXHR, textStatus, errorThrown)
            {
                $('#errors_place').html(
                    '<div class="alert alert-danger fade in">'
                    + errorThrown
                    + '</div>'
                    );
                loaderSwitch('off');
            });
        });

地点:

  1. loaderSwitch 是一个 javascript 函数,它显示或隐藏任何“等待结果”动画。
  2. searchservice_url_here - 是您的搜索方法的 URL
  3. serialized_entry_data_here - 是 JSON 格式,包含您要发布到搜索方法的数据
  4. renderResults 是您需要准备呈现结果的 javascript 函数。
  5. result_place是div的id,要打印搜索结果的地方

或者,您可以使用 HTML 响应并将其粘贴到#result_place

我希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多