我正在使用带有 JavaScript 的 LiveCycle LC 设计器开发 Adobe 交互式表单。
// 确定必填字段(可能是自由文本字段、下拉菜单、复选框,我的意思是有 3 种可能性)并将它们设为黄色
var myArrayYellow = new Array();
var yellowFields;
yellowFields = my_required_fields_list_string.rawValue
myArrayYellow = yellowFields.split(" ");
for (var i = 0; i < myArrayYellow.length; i++) {
===> 在这一点上,我想检查 [i] 字段是否存在,它是否是一个有效的字段/objetc?bcz,我有机会在 my_required_fields_list_string 中获得不存在的字段,因此在为它们分配黄色之前,我想检查它们在表单上的有效性吗? 请。让我知道这个的JS //如果它是真的/找到了,那么只分配黄色如下
xfa.resolveNode("MY_ADOBE_FORM.." + myArrayYellow [i]).ui.oneOfChild.border.fill.color.value = "255,255,254"
};
出于其他目的,一些专家给了我一个如下的 JS,我尝试按照我的上述要求对其进行调整,但它不起作用
function findNodes(vNode){
if (vNode.className === "field"){
if (vNode.isPropertySpecified("name") === true){
var myStateName = new RegExp(vNode.name);
var returnValue = GFL.search(myStateName);
if (returnValue != -1) {
this.ui.oneOfChild.border.fill.color.value = "192,192,192";
this.access = "readOnly";
} else {
this.ui.oneOfChild.border.fill.color.value = "255,255,255"; //whatever colour is open access
this.access = "open";
}
}
}
for (var a=0;a<vNode.nodes.length;a++) {
findNodes(vNode.nodes.item(a));
}
}
findNodes(xfa.form);