•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the RSS, Web Services and SOAP section within the Web Development category of DaniWeb, a massive community of 374,539 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 2,726 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our RSS, Web Services and SOAP advertiser:
Views: 1387 | Replies: 1
![]() |
•
•
Join Date: Oct 2007
Posts: 7
Reputation:
Rep Power: 0
Solved Threads: 0
Hi Guys...
I'm having problem with XML transformation. I have this code where I click a link that will open a new window that is referenced to XML. It works fine in IE but in Firefox, a new window is opened and the contents are not displayed.
Here's a code snippet:
if (window.ActiveXObject) //code for IE
{
xslDoc=new ActiveXObject("Microsoft.XMLDOM");
xslDoc.async=false;
xslDoc.load(xslPath);
transformxsl();
}
//code for Mozilla, Firefox
else (document.implementation && document.implementation.createDocument)
{
xslDoc=document.implementation.createDocument("","",null);
xslDoc.load(xPath);
xslDoc.onload=transformxsl;
}
function transformxsl()
{
var OpsDocStr = xmlDoc.transformNode (xslDoc)
document.getElementById("it").innerHTML = OpsDocStr //xmlDoc.transformNode (xslDoc)
}
The line in red is where the error is: xmlDoc.transformNode is not a function
Can anyone help me???
Will really appreciate it. Thanks.
I'm having problem with XML transformation. I have this code where I click a link that will open a new window that is referenced to XML. It works fine in IE but in Firefox, a new window is opened and the contents are not displayed.
Here's a code snippet:
if (window.ActiveXObject) //code for IE
{
xslDoc=new ActiveXObject("Microsoft.XMLDOM");
xslDoc.async=false;
xslDoc.load(xslPath);
transformxsl();
}
//code for Mozilla, Firefox
else (document.implementation && document.implementation.createDocument)
{
xslDoc=document.implementation.createDocument("","",null);
xslDoc.load(xPath);
xslDoc.onload=transformxsl;
}
function transformxsl()
{
var OpsDocStr = xmlDoc.transformNode (xslDoc)
document.getElementById("it").innerHTML = OpsDocStr //xmlDoc.transformNode (xslDoc)
}
The line in red is where the error is: xmlDoc.transformNode is not a function
Can anyone help me???
Will really appreciate it. Thanks.
Last edited by Dennis_Phils : Dec 6th, 2007 at 5:45 am.
•
•
Join Date: Dec 2007
Posts: 75
Reputation:
Rep Power: 1
Solved Threads: 10
First of all, your code does not show where you initialized xmlDoc. I see xslDoc, but not xmlDoc. I assume this happens before the posted code.
With the assumptions above, the method "transformNode" is only valid for
xml objects created specifically for IE. In your code, this would be:
xslDoc=new ActiveXObject("Microsoft.XMLDOM");
However, the reason you get the error is because xmlDoc is not an ActiveXObject('Microsoft.XMLDOM'). FF does not support such object. It has its own object with its own methods.
The following page might be instructive if you want to pursue this route. Meaning, if you want to write your own "library". Section 8.13 uses the transformNode and shows you how to do the same for FF.
http://www.dcs.bbk.ac.uk/~ptw/teachi...t-2/notes.html
However, my recommendation is for you to download the Sarissa library. Basically, it is a library that takes care of these browser incompatibilities. Thus, you don't need to remember/learn the IE syntax and Firefox Syntax or whatever other browser syntax. You just need to learn the sarissa functions and how to use them to perform your transformations. Most often than not, once your script works on one browser, it automatically works on the others! I cannot stress enough how much of a head ache you will avoid by pursing this route instead. Good Luck.
With the assumptions above, the method "transformNode" is only valid for
xml objects created specifically for IE. In your code, this would be:
xslDoc=new ActiveXObject("Microsoft.XMLDOM");
However, the reason you get the error is because xmlDoc is not an ActiveXObject('Microsoft.XMLDOM'). FF does not support such object. It has its own object with its own methods.
The following page might be instructive if you want to pursue this route. Meaning, if you want to write your own "library". Section 8.13 uses the transformNode and shows you how to do the same for FF.
http://www.dcs.bbk.ac.uk/~ptw/teachi...t-2/notes.html
However, my recommendation is for you to download the Sarissa library. Basically, it is a library that takes care of these browser incompatibilities. Thus, you don't need to remember/learn the IE syntax and Firefox Syntax or whatever other browser syntax. You just need to learn the sarissa functions and how to use them to perform your transformations. Most often than not, once your script works on one browser, it automatically works on the others! I cannot stress enough how much of a head ache you will avoid by pursing this route instead. Good Luck.
![]() |
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
•
•
•
•
•
•
•
•
DaniWeb RSS, Web Services and SOAP Marketplace
•
•
•
•
api asp bebo beta blogger blogging bon browser browsers code development dom echo email encryption europe feed firefox gdata google html internet internet explorer javascript katemodern linux lonelygirl15 microsoft mozilla news open-source patch programming reader rss security software standards super testing users victory video w3c weather web webmail xml xoap youtube
- Previous Thread: soap security
- Next Thread: Trying to add a Form in XML to my website.


Linear Mode