IBM Worklight - 适配器 Javascript 失败
Posted
技术标签:
【中文标题】IBM Worklight - 适配器 Javascript 失败【英文标题】:IBM Worklight - Adapter Javascript fails 【发布时间】:2014-04-25 23:48:32 【问题描述】:我试图在列表中显示 JSON 数据,但我的 javascript 代码卡在 wlCommonInit() 函数的中间。
function wlCommonInit()
WL.Logger.debug("inside the wlcommoninit");
busyIndicator = new WL.BusyIndicator('AppBody');
var $list = $("ul#myList");
$list.append('<li> ' + "resrere" +
'</li>');
getData();
$list.append('<li> ' + "resrere" +
'</li>');
function getData()
$.mobile.showPageLoadingMsg();
WL.App.overrideBackButton (function()WL.App.close(););
var invocationData =
adapter : 'StudentInfo',
procedure : 'getStudentInfos'
;
WL.Client.invokeProcedure(invocationData,
onSuccess : loadFeedsSuccess,
onFailure : getDataFailure,
);
function loadFeedsSuccess(result)
if (!result || !result.invocationResult || !result.invocationResult.items || result.invocationResult.items.length == 0)
alert("Could not retrieve feeds");
feeds = result.invocationResult.items;
$("ul#myList").empty();
for (var i=0; i<feeds.length; i++)
var dataItem = feeds[i];
var listItem = $("<li>" + dataItem.question + "</li>");
$("ul#myList").append(listItem);
在这段代码中,它停留在getData();
,它显示第一个“resrere”,但不显示第二个“resrere”。我找不到问题,所以我无法创建任何解决方案。感谢您的帮助。
【问题讨论】:
【参考方案1】:items
应该是resultSet
。
在进行以下更改后已在本地测试并验证可以正常工作。
改变这个:
if (!result || !result.invocationResult || !result.invocationResult.items || result.invocationResult.items.length == 0)
到这里:
if (!result || !result.invocationResult || !result.invocationResult.resultSet || result.invocationResult.resultSet.length == 0)
还有这个:
feeds = result.invocationResult.items;
到这里:
feeds = result.invocationResult.resultSet;
【讨论】:
以上是关于IBM Worklight - 适配器 Javascript 失败的主要内容,如果未能解决你的问题,请参考以下文章