背景:使用iText将html表单输出转换为pdf,并且只想选择值。如果有三个选项,并且用户选择了如下选项C,则希望仅以pdf格式显示C.
<input type="radio" name="test" value="A">A
<input type="radio" name="test" value="B">B
<input type="radio" name="test" value="C" checked="true">C
对于上面的字符串集,因为只选择了选项“C”,我想获得以下输出:
<input type="radio" name="test" value="C">C
基本上,想要删除非选定节点。尝试以下方式并没有得到预期的输出。
NodeList list = node.getChildNodes();
for (int i = 0; i < list.getLength(); i++) {
Element currentNode = null;
if(list.item(i).getNodeType() == Node.ELEMENT_NODE && list.item(i).getNodeName().equals("input") )
currentNode =(Element) list.item(i);
if(conditionDefinedForNotchecked && currentNode != null)
currentNode.getParentNode().removeChild(currentNode);
}
答案 0 :(得分:1)
我喜欢iText,但我仍然发现创建一种中间HTML格式让我的生活更轻松,因为HTML调试/查看比PDF更先进。
建议流程: