0
我的目标是允许用户输入一个值,获取与所述值相对应的一些XML,并将获得的XML呈现在iframe中。如何将XML文档呈现给iframe?
我在HTML文件中的以下的jQuery代码:
$.post('VerifyServlet', { action: "getDocument", "tcNo": tcNo, "pgNo": pgNo }, function(data) {
var xml = "<?xml-stylesheet type=\"text/xsl\" href=\"../xsl/esigtest.xsl\"?>" + data;
var ifrm = document.getElementById('xmlLoader');
ifrm = (ifrm.contentWindow) ? ifrm.contentWindow : (ifrm.contentDocument.document) ? ifrm.contentDocument.document : ifrm.contentDocument;
ifrm.document.open('text/xml');
ifrm.document.write(xml);
ifrm.document.close();
});
在我的servlet相关的代码如下:
response.setContentType("text/xml");
PrintWriter out = response.getWriter();
out.println(xmlString);
然后,我有我的iframe ...
...
<td colspan="3">
<iframe id="xmlLoader" frameborder="0" width="100%" height="100%"></iframe>
</td>
...
放在一起,在我的iframe中显示的结果是
<?xml-stylesheet type="text/xsl" href="../xsl/esigtest.xsl"?>[object XMLDocument]
我推断[object XMLDocument]
所指的可能是data
,并且被调用的XMLDocument的toString
方法。但是,我真正想要的是使用XSL样式表呈现XML并显示结果。
老实说,我不知道如何去了解这一点,所以我尝试了MIME类型的排列,text/plain
,text/xml
,application/xml
之间,但没有任何工程。有没有办法做我想达到的目标?
我将如何应用此我上面的代码? – ohseekay 2012-03-21 01:32:37