makeStaplerProxy('/$stapler/bound/2df5613a-1348-4f31-aa0a-a7f64e91937f','5c670a317a561c88d83286170d8ca83d',['getChoicesForUI','doUpdate']); // Create Jenkins proxy if (window.makeStaplerProxy) { window.makeStaplerProxy = window.__old__makeStaplerProxy; } // find the cascade parameter element var parentDiv = jQuery('#choice-parameter-1433189626756826'); var parameterHtmlElement = parentDiv.find('DIV'); if (!parameterHtmlElement || parameterHtmlElement.length == 0) { console.log('Could not find element by name, perhaps it is a DIV?'); parameterHtmlElement = parentDiv.find('*[name="value"]'); } if (parameterHtmlElement && parameterHtmlElement.get(0)) { var cascadeParameter = new UnoChoice.CascadeParameter('CHILD_FIELD', parameterHtmlElement.get(0), 'choice-parameter-1433189626756826', cascadeChoiceParameter); UnoChoice.cascadeParameters.push(cascadeParameter); // filter for (var i = 0; i < referencedParameters.length ; ++i) { var parameterElement = null; // FIXME: review the block below var divs = jQuery('div[name="parameter"]'); for (var j = 0; j < divs.length ; j++) { var div = divs[j]; var hiddenNames = jQuery(div).find('input[name="name"]'); if (hiddenNames[0].value == referencedParameters[i]) { var children = div.children; for (var k = 0; k < children.length; ++k) { var child = children[k]; if (child.getAttribute('name') == 'value') { parameterElement = child; break; } else if (child.tagName == 'DIV') { var subValues = jQuery(child).find('input[name="value"]'); if (subValues && subValues.get(0)) { parameterElement = child; break; } else { parameterElement = child; break; } } else if (child.getAttribute('type') == 'file') { parameterElement = child; break; } } } } new UnoChoice.ReferencedParameter(referencedParameters[i], parameterElement, cascadeParameter); } // call update methods in Java passing the HTML values console.log('Updating cascade of parameter [CHILD_FIELD] ...'); cascadeParameter.update(); } else { console.log('Parameter error: Missing parameter [choice-parameter-1433189626756826] HTML element!'); }