JQMobile - 无法在自定义ajax中加载微调器

时间:2012-12-05 05:25:05

标签: javascript ajax jquery jquery-mobile

我的搜索表单是 data-ajax = false 。因为我想写自己的自定义ajax调用。

<form id="search" data-ajax="false">
<fieldset data-role="controlgroup" data-mini="true">
<input required="required" autocorrect="off" name="TERM_1" placeholder="Search Catalogue" type="search" value=""/>
</fieldset>
</form>

以下是js代码

$(document).bind('pageinit',function() {
$('#search').unbind('submit');
        $('#search').submit(function(event) {
        $.mobile.loading( 'show', { text: "loading", textonly: true, textVisible : true });
        input = $('[name="TERM_1"]').val();
        $.ajax(
        {
            type: "GET",
            async: false,
            url: 'LiberoWebServices.JSONAPI.cls',
            data: 
            {
                Method: "Catalogue",
                Type: "simple",
                Split: 10,
                Term: input
            },
            dataType: 'jsonp',
            success: function(data) {
                loadResults(data);
            },
            complete: function(data) {
                $.mobile.loading('hide');
            }
        })
        return false;
        });
    });

加载弹出窗口似乎没有显示出来。我猜它与我解绑和绑定的方式有关。 我解除它的原因是因为每次我提交表单时它都会继续为我在DOM中预先提取的所有其他页面运行ajax调用。 我不确定这样做的最佳方式是什么。

需要帮助找出如何显示加载弹出窗口。 感谢

1 个答案:

答案 0 :(得分:0)

使用逻辑更改。而不是:

 $('#search').unbind('submit');

创建一个函数指针并重置绑定以运行一次,就像这些无关的问题一样: