在Adobe Livecycle(可能是Javascript)中,我如何引用多个页面/子页面来同时隐藏它们
In Adobe Livecycle (possibly Javascript), how do I reference multiple pages/subpages to hide them simultaneously?
我想这最终可以应用于对象和页面。不过,目前我更关心页面和子表单。
我想根据下拉菜单选择隐藏/显示多个页面。我当然搜索过这个主题。似乎没有人完全问我在问什么,而最密切相关的问题只回答单个对象,而不是多个对象。我有将近80个不同的页面/子表单需要担心。
我有一个下拉菜单,根据选择,以前隐藏的某些页面和子窗体将变为可见。然而,我正试图建立某种宽恕,这样,如果有人不小心在下拉菜单上选择了错误的项目,并返回进行自我纠正,要么(1)所有相关页面都将返回到默认的隐藏状态,然后继续前进并使某些选择可见,要么(2)手动命名每个对象,并告知其返回隐藏状态。
我找到的唯一方法如下:
switch (newValue)
{
case "1":
this.resolveNode("subform_1").presence = "visible";
this.resolveNode("subform_2").presence = "hidden";
this.resolveNode("page_3").presence = "hidden";
break;
case "2":
this.resolveNode("subform_1").presence = "hidden";
this.resolveNode("subform_2").presence = "visible";
this.resolveNode("page_3").presence = "hidden";
break;
case "3":
this.resolveNode("subform_1").presence = "hidden";
this.resolveNode("subform_2").presence = "hidden";
this.resolveNode("page_3").presence = "visible";
break;
}
这是乏味的,耗时的,而且不雅。相反,我想做的是同时寻址多个对象。类似于:
switch (newValue)
{
case "1":
this.resolveNode("subform_2", "page_3").presence = "hidden";
this.resolveNode("sabform_1").presence = "visible";
break;
case "2":
this.resolveNode("subform_1", "page_3").presence = "hidden";
this.resolveNode("subform_2").presence = "visible";
break;
case "3":
this.resolveNode("subform_1", "subform_2").presence = "hidden";
this.resolveNode("page_3").presence="visible";
break;
}
我知道这本身就被认为是不雅的,但考虑到表单的整体设计、命名方案等,系统真的没有办法调用所有以相同字母等开头的页面或子表单。所以我不得不单独命名每一个。这很好!但我已经尝试了无数种方法,但都无济于事。我只是想要一种更精简的方式来同时隐藏/显示多个页面和子表单,或者禁止它将可见性重置为默认值。
Adobe论坛上的好心人非常乐于助人,并提供了以下答案:
使用数组和forEach()方法,您可以编写一个非常紧凑的脚本来完成您想要的任务。
var aObjects = [[subpage_1, "1"], [subpage_2, "2"], [page_3", "3"]],
cSelection = xfa.event.change;
// Loop through all elements in the array…
aObjects.forEach(function (element) {
//… and set its presence
// element[0] is the first value of the nested array i.e. "subpage_1", element[1] is the second value i.e. "1"
element[0].presence = element[1] === cSelection ? "visible" : "hidden";
});
相关文章:
- 引用对象中的通用值
- 如何在JavaScript中将字符串转换为函数引用
- 当包含另一个asp文件时,是否也包含所有引用的样式和脚本页面
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 显示5秒后隐藏潜水
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 在动态创建的元素上获取对特定选择器的引用
- 浮动页脚栏-使用Bootstrap隐藏
- 在jquery中为显示/隐藏设置cookie
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- IIFE中的函数引用不可用
- 空引用错误 Eval(字符串) 将其传递给代码隐藏中的函数
- 引用包含的php页面中的对象,以及如何隐藏它
- 隐藏 HTTP 引用的 301 重定向
- 角度砌体指令隐藏内部元素,错误:引用错误:未定义砌体
- 从代码隐藏引用 jquery 库
- 在iFrame(不同域)表单隐藏字段中抓取父级引用
- 在Adobe Livecycle(可能是Javascript)中,我如何引用多个页面/子页面来同时隐藏它们
- 隐藏Iframe引用