Chris@0: {% autoescape 'js' %} Chris@0: (function (xpath) { Chris@0: function getElement(xpath, within) { Chris@0: var result; Chris@0: if (within === null || within === undefined) { Chris@0: within = document; Chris@0: } Chris@0: result = document.evaluate(xpath, within, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); Chris@0: if (result.snapshotLength !== 1) { Chris@0: return null; Chris@0: } Chris@0: return result.snapshotItem(0); Chris@0: } Chris@0: Chris@0: var node = getElement(xpath); Chris@0: Chris@0: if (node === null) { Chris@0: return null; Chris@0: } Chris@0: Chris@0: if(node.tagName.toLowerCase() != "input"){ Chris@0: return null; Chris@0: } Chris@0: Chris@0: if(node.type.toLowerCase() != "checkbox" && node.type.toLowerCase() != "radio"){ Chris@0: return null; Chris@0: } Chris@0: Chris@0: return node.checked; Chris@0: }('{{ xpath }}')); Chris@0: {% endautoescape %}