我正在从服务器获取json
数据,如1,User,2,Courses,3,Organization
正确,这些数据我存储在一个变量实体中,现在我正在为文本字段添加此json数据以进行自动完成,然后允许文本框(标签)的多个值,如下图所示。
,
我在typeerror undefined is not a function
alert('entities from the 466 line '+e);
这样的例外情况
任何人都可以帮助我吗?
AUI().ready('aui-textboxlist', function(A) {
try {
alert('before calling selectEntities()');
var entities = selectEntities();
console.log(" entities "+entities);
alert("entities from the server "+entities);
entitiesBoxList = new A.TextboxList({
contentBox: '#<portlet:namespace />entitiesDiv',
dataSource: entities,
matchKey: 'name',
schema: {
resultFields: ['id', 'name']
},
queryMatchContains:true,
queryDelimiter : ',',
after: {
render: function() {
try{
var instance_ = this;
var index = 0;
this.entries.insert(index, entry);
}catch (e) {
alert("exception raised at 461 line"+e);
}
}
}
}).render();
} catch(e){
alert('entities from the 466 line '+e);
}
}
答案 0 :(得分:1)
你说这是在线:
alert('entities from the 466 line '+e);
然后它要么说你的警报()不是一个功能(不太可能) 或者在你的“&#39;值。既然你说它包含JSON数据,也许是因为你没有正确解析数据?
可能更好:我注意到你在第3行有一个名为selectEntities()的函数。也许它引用了那一行并且你有一个绑定问题。
答案 1 :(得分:0)
实际上上面的代码在Liferay-6.06中工作正常,我试图将它迁移到Liferay-6.2,所以6.06中的AUI版本在6.2中不起作用:
AUI().ready('aui-textboxlist-deprecated', function (A) {
// code that uses A.TextboxList goes here
});
代码是6.2。对于6.1,我们必须使用aui-textboxlist而不是aui-textboxlist-deprecated。