1

我之前问过一个类似的问题,但是该解决方案不再适用于我的应用程序,我需要单击按钮以在表(failuretable)中创建一个新行(FailureInstance),并且我需要它用来自字段的数据填充三个单元格在其他地方填写。这是我的代码:form1.failuretable.AddFailureButton::click - (JavaScript,客户端)

xfa.host.messageBox("Failure Recorded and Added To Table Below. Please Continue Filling Out the Form Until All Failures Have Been Recorded.  Then Please Save and Submit the Form.", "Continue/Save/Submit", 3);
if (xfa.host.version < 8) {
    xfa.form.recalculate(1);
}
var newRow = failuretable._FailureInstance.addInstance(1);
newRow.FailureCode.rawValue = form1.FailureType.rawValue;
newRow.Location.rawValue = form1.CellLocation.rawValue;
newRow.Comments.rawValue = form1.AdditionalComments.rawValue;

现在这甚至没有为我的表创建一个新行......感谢任何帮助!

4

2 回答 2

0

在设计时记得启用:

对象 > 数据绑定 > 每个数据项的重复表

在代码中,我相信缺乏调用“instaceManager”:

...
var newRow = failuretable.FailureInstance.instanceManager.addInstance(1);
...

http://help.adobe.com/en_US/livecycle/9.0/designerHelp/index.htm?content=000178.html

于 2013-06-12T12:11:05.090 回答
0

您应该检查是否允许一行的多个实例。在层次视图中选择 FailureInstance,然后在 Object->Binding 中(如果您没有看到它,请转到窗口菜单并选择 Object)检查是否选择了“Repeat Row for Each Data Item”。如果没有,则选择它,您的代码应该可以正常工作。

我还建议在您的 Adob​​e Reader 中启用 JavaScript 调试,因为它比您应该看到的错误何时出现以及它是关于什么的。打开 Reade 进入 Edit->Preferences->JavaScript 并选择“Show console on errors and messages”。然后您需要重新启动 Designer。

于 2013-05-03T22:55:50.540 回答