从列表对象中获取选择
Getting selections from a list object
我在 appmaker 中有一个 table,我添加了复选框,这样:
我想获取用户检查过的所有电子邮件的列表。此时我什至无法访问单个复选框的状态。这是我尝试添加到按钮的当前代码片段:
console.log(widget.parent.parent.parent.children.Panel1.children.Table3Panel.children.Table3.children.Table3Body.children.Table3Row.children.UserSelectionCheckbox.value);
我收到错误:
Cannot read property 'children' of undefined
at Home.Panel1.OuSelectPanel1.Button6.onClick:1:133
我能够使用自动填充来编写这整条语句,为什么它找不到子对象?有什么方法可以直接引用此列表,而无需从小部件或应用程序根目录下树?
基于 1:133 似乎是说 Table3Row 没有子项。我想知道使用 widget.root.descendants.Table3Row 是否可能是解决特定 table.
的不同方法
对于此类功能,自动填充 (intellisense) 对您不起作用。当您尝试从 table 中获取行集合时,您需要以不同方式处理子项。我会为您的按钮 onClick 事件建议类似于此的代码:
var rows = widget.root.descendants.Table3Body.children._values;
var emails = [];
for (var i in rows) {
var value = rows[i].children.Checkbox1.value;
if (value) {
emails.push(rows[i].datasource.item.Email);
}
}
console.log(emails);
同样,在您选择 _values 后,自动完成代码功能将不再起作用,这将 return 您的 table 正文的所有直接子项,这正是您想要的。
我在 appmaker 中有一个 table,我添加了复选框,这样:
我想获取用户检查过的所有电子邮件的列表。此时我什至无法访问单个复选框的状态。这是我尝试添加到按钮的当前代码片段:
console.log(widget.parent.parent.parent.children.Panel1.children.Table3Panel.children.Table3.children.Table3Body.children.Table3Row.children.UserSelectionCheckbox.value);
我收到错误:
Cannot read property 'children' of undefined
at Home.Panel1.OuSelectPanel1.Button6.onClick:1:133
我能够使用自动填充来编写这整条语句,为什么它找不到子对象?有什么方法可以直接引用此列表,而无需从小部件或应用程序根目录下树?
基于 1:133 似乎是说 Table3Row 没有子项。我想知道使用 widget.root.descendants.Table3Row 是否可能是解决特定 table.
的不同方法对于此类功能,自动填充 (intellisense) 对您不起作用。当您尝试从 table 中获取行集合时,您需要以不同方式处理子项。我会为您的按钮 onClick 事件建议类似于此的代码:
var rows = widget.root.descendants.Table3Body.children._values;
var emails = [];
for (var i in rows) {
var value = rows[i].children.Checkbox1.value;
if (value) {
emails.push(rows[i].datasource.item.Email);
}
}
console.log(emails);
同样,在您选择 _values 后,自动完成代码功能将不再起作用,这将 return 您的 table 正文的所有直接子项,这正是您想要的。