使用的是IBM Worklight Studio 6.1.0.02-20160314-1430
使用多页和适配器。 onSuccess函数我正在加载另一个页面。并在页面加载后在onSuccess函数中写入busyInd.hide()。在页面加载之前问题是繁忙的指示器隐藏。从适配器下一页加载响应后,但同时忙指示消失,然后加载下一页。它仅在Android的情况下发生,并且相同的代码在IOS和WindowsPhone8中正常工作。
this.form3Submit = function(){
var sessionid="userID";
busyInd.show();
var invocationData = {
adapter : "API_Adapter",
procedure : "SomeSubmit",
parameters : [sessionid],
compressResponse : true
};
WL.Client.invokeProcedure(invocationData, {
onSuccess : form3SubmitSuccess,
onFailure : AdapterFail,
timeout: timeout
});
};
form3SubmitSuccess = function(result){
invocationResult = result.invocationResult;
if(invocationResult.isSuccessful) {
$("#contentData").load("Views/form4.html", null, function (response, status, xhr) {
referenceno = invocationResult.something.Response.somerefno;
if(referenceno != ''){
//some lines of code
}
if(invocationResult.something.STATUS.CODE == '0'){
//some lines of code
busyInd.hide();
}else{
//some lines of code
busyInd.hide();
}
ko.applyBindings(self, $(".dynamic-page-content").get(0));
busyInd.hide();
});
}
busyInd.hide();
};
在main.js中声明忙碌指示符,注意如下
var busyInd;
function wlCommonInit(){
busyInd = new WL.BusyIndicator('content', {text : 'Loading...'});
}
答案 0 :(得分:1)
您正在将另一个页面加载到以前显示忙指示符的视口中,实际上您通过完全替换HTML来删除忙指示符。这是预料之中的。
如果您希望在加载form4.html后仍显示忙碌指示符。在将HTML页面加载到视口后,您需要先再次显示它。