我的搜索表单是 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调用。 我不确定这样做的最佳方式是什么。
需要帮助找出如何显示加载弹出窗口。 感谢
答案 0 :(得分:0)
使用逻辑更改。而不是:
$('#search').unbind('submit');
创建一个函数指针并重置绑定以运行一次,就像这些无关的问题一样: