Javascript livecyclees2中的脚本编写

Javascript livecyclees2中的脚本编写,javascript,adobe,livecycle,livecycle-designer,Javascript,Adobe,Livecycle,Livecycle Designer,我有一个表单,它有几个名为“transType”的组,这些组中有一个文本字段和一组3个单选按钮。每个单选按钮组的值为是、否和已解析。我在顶部有一个单选按钮组,单击该组时,页面上的相应按钮也会被选中,例如,我在顶部组中单击“否”,下面的所有“否”字段都会被选中。我正在使用ActionBuilder来实现这一点,但它似乎很乏味,我必须为每个值都这样做。以下是目前的脚本: 我在AdobeForumforLiveCycle上发布了文章,但是AdobeForumforLiveCycle基本上没用。有没

我有一个表单,它有几个名为“transType”的组,这些组中有一个文本字段和一组3个单选按钮。每个单选按钮组的值为是、否和已解析。我在顶部有一个单选按钮组,单击该组时,页面上的相应按钮也会被选中,例如,我在顶部组中单击“否”,下面的所有“否”字段都会被选中。我正在使用ActionBuilder来实现这一点,但它似乎很乏味,我必须为每个值都这样做。以下是目前的脚本:




我在AdobeForumforLiveCycle上发布了文章,但是AdobeForumforLiveCycle基本上没用。有没有更简单的脚本我可以写?也许是阵列?我在JavaScript方面有点像n00b,但我可以蹒跚而行。TIA

如果使用数据绑定,则可以将所有“是/否/未解析”绑定到同一接口字段,以便它们都具有相同的值。这意味着如果您在顶部选择了一个值,其余的将继承相同的值

在过去的几年中使用了Livecycle,有更快的方法可以做到这一点,比如添加一个函数,将每个字段设置为一个值,但是Livecycle有时可能有点不稳定,所以通常最好按照上面的方法来做。您可以使用case语句而不是if/elseif,那么这只是复制相同文本并更改值的情况。
如果您想发送表单的副本,我将插入各种选项,例如函数或大小写,您可以看到它的外观/工作原理。

从纯javascript的角度来看,您可以通过以下方式减轻代码的负担:

var fields = ["transType[1].exeError", 
                "transType[2].newEnrol",
                "transType[3].enrolReq",
                ...
                "transType[14].withdrawReq"];
var i, j, newValue;

switch(this.rawValue) {
    case "1" : newValue = "No"; break;
    ...
}

for(i=0, j=fields.length; i<j; i++) {
    this.resolveNode(fields[i]).rawValue = newValue;
}
var-fields=[“transType[1].exe错误”,
“transType[2]。新注册”,
“transType[3]。enrolReq”,
...
“transType[14].撤销请求”];
var i,j,新值;
开关(此.rawValue){
案例“1”:newValue=“否”;中断;
...
}
对于(i=0,j=fields.length;i
var fields = ["transType[1].exeError", 
                "transType[2].newEnrol",
                "transType[3].enrolReq",
                ...
                "transType[14].withdrawReq"];
var i, j, newValue;

switch(this.rawValue) {
    case "1" : newValue = "No"; break;
    ...
}

for(i=0, j=fields.length; i<j; i++) {
    this.resolveNode(fields[i]).rawValue = newValue;
}