1
나는 여기와 심지어 더 큰 Google 검색에서 찾은 모든 솔루션을 시도했지만 아무것도 작동하지 않는 것 같습니다. 여기 내 문제가있다. 나는 XML로 된 데이터를 가지고 있는데, 구글 비주얼라이제이션 API를 사용하여 시각화하고 싶다. XSL을 사용하여 데이터 소스로 무엇을 할 필요없이 원하는 것을 생성 할 수 있기를 바랬습니다 (이유가 있습니다). 하지만 javascript 코드가 내 출력에 표시되지 않습니다. 이것은 가능한가?xml과 xsl을 사용하여 javascript를 생성하십시오
내 XML
<DocumentElement>
<QueryResults>
<Year>2000</Year>
<Population>100000</Population>
</QueryResults>
<QueryResults>
<Year>2001</Year>
<Population>105000</Population>
</QueryResults>
</DocumentElement>
내 XSL 파일
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="utf-8"/>
<xsl:template match="/">
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load('visualization', '1', {packages:['barchart']});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Year');
data.addColumn('string', 'Population');
data.addRows(2); // hard-coded for testing
<xsl:for-each select="DocumentElement/QueryResults">
data.setValue(0, 0, '<xsl:value-of select="Year"/>');
data.setValue(0, 1, '<xsl:value-of select="Population"/>');
</xsl:for-each>
var chart = new google.visualization.BarChart(document.getElementById('chart_div'));
chart.draw(data, {width: 400, height: 240, is3D: true, title: 'Population'});
}
</script>
<div id="chart_div"> </div>
</xsl:template>
</xsl:stylesheet>
내 출력
<!-- notice no javascript -->
<div id="chart_div"> </div>
필자가 붙여 넣은 것은 정확하게 XML 출력과 비슷합니다. 그런 다음 타사 구성 요소가 XML과 내 XSL을 기반으로 렌더링됩니다 ... 무슨 일이 일어나는지 알아 내기 위해 렌더러를 파헤쳐 야 할 수도 있습니다. 감사. – NJChim
어떤 제 3 자 구성 요소, 당신이 내 질문에 신경 쓰지 않는다면? 앞에서 언급 한 것처럼 입력 내용을 test.xml 및 test.xsl에 복사 한 다음 스타일 시트 지시문을 추가하면 올바르게 작동합니다. 제 생각에이 도구는 아마도 당신의 도구 체인에있는 것일 겁니다. –
DNN 보고서 모듈에서 XML 침입이 있으며 내장 된 XSL 시각화를 사용할 수 있는지보고 있습니다. HTML 비주얼 라이저를 사용하여 작업하고 있지만 추한 것입니다. 그리고 DNN에 익숙하지 않다면 이것은 아마도 당신에게 아무 의미가 없습니다. :) – NJChim