0
我想從Jasper Reports XML文件(我上傳)中提取參數。使用Javascript從XML文件獲取參數名稱
這是我到目前爲止有:
var file = document.getElementById("fileToUpload").files[0];
//You could insert a check here to ensure proper file type
var reader = new FileReader();
reader.readAsText(file);
reader.onloadend = function(){
var parser = new DOMParser();
var doc = parser.parseFromString(reader.result, "application/xml");
//doc.getElementsByTagName("parameter")[0]
var parameters = doc.getElementsByTagName("parameter");
然後,我可以做parameters[0]
並獲得:
<parameter name="report_type_id" class="java.lang.Integer"></parameter>
我要的是參數的名稱。
這是XML的樣子(部分):
<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.3.1.final using JasperReports Library version 6.3.1 -->
<!-- 2017-05-25T10:35:12 -->
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="Test" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="1fe7af1a-adc5-48b5-a571-37c521a3ccea">
<property name="com.jaspersoft.studio.data.sql.tables" value=""/>
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="dev_selection"/>
<parameter name="report_type_id" class="java.lang.Integer"/>
<queryString language="SQL">
<![CDATA[select * from reports where report_type_id = $P{report_type_id}]]>
</queryString>
<field name="name" class="java.lang.String"/>
<field name="sql" class="java.lang.String"/>
<field name="report_type_id" class="java.lang.String"/>
<background>
米克
請問'參數[0] .getAttribute( '名')'的工作? – PeterMader
是的,它肯定會!謝謝。 – Mick
獲取所有參數名稱的最簡單方法是什麼? (在這個例子中只有一個,但比現實世界更多)forEach通過參數或更好的東西? – Mick