2012-03-20 2 views
0

Моя цель - позволить пользователю вводить значение, получать XML, соответствующее указанному значению, и отображать полученный XML в iframe.Как преобразовать XML-документ в iframe?

У меня есть следующий код JQuery в моем HTML-файл:

$.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(); 
    }); 

Соответствующий код в моем сервлета следующим образом:

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, и что toString метод XMLDocument в настоящее время вызывается. Однако на самом деле я хочу, чтобы XML-рендеринг использовался с помощью таблицы стилей XSL и отображаемых результатов.

Я честно не знаю, как идти об этом, поэтому я попытался перестановки типа MIME, между text/plain, text/xml, application/xml, но ничего не работает. Есть ли способ сделать то, что я хочу достичь?

ответ

0

Чтобы сделать XML вы можете использовать этот синтаксис

var xml = $('<xml>', { version : "1.0", encoding : "UTF-8" }); 

первого параметром является именем узла, второй объект, чей proerties будет стал атрибутами узла.

, то вы можете использовать методы JQuery для создания XML

var head = $('<head>'); 
head.appendTo(xml); 
+0

Как бы применить это к моему коду выше? – ohseekay

Смежные вопросы