I trying to store a piece of xml into a string variable in javascript and in IE8 it keeps throwing an error. FireFox doesn't show the error but of course in IE8 it does. Swictching browsers isn't an option so I have to try to solve this one.
The purpose of the function is to check if the items of a list exist in an xml object or not. So if there is a better way to do that check I am open to that as well. The system we pull from has a function to convert the xml to a string. At the bottom is an output of what that retrieves. Here is the function.
function commodityExists(newCommodityCode){
var comExists = new Boolean(0);
newCommodityCode = ">" + newCommodityCode + "<"
var strXML = 'tw.local.aribaHeader.commodities.toXMLString()'; //ERROR HERE
strXML = strXML.toString();
if(strXML.indexOf(newCommodityCode,0)>0){
comExists=true;
}
return comExists;
};
Here is the output from strXML.toString(); but as you can see it is essentially xml.
var strXML = ‘<variable type="NameValuePair[]">
<item type="NameValuePair">
<name type="String"><![CDATA[No Data Found]]></name>
<value type="String"><![CDATA[95990070]]></value>
</item>
</variable>’;
new Boolean(0)forfalse.if(new Boolean(0)) console.log('a');will log 'a'. In other words, theBooleanobject which wrapsfalseis truthy.toXMLString. At first glance it looks like a line break problem, because you're showing line breaks in yourstrXMLstring, which is not allowed in JavaScript (without ending each line in a backslash). However, it's not allowed on Firefox just as much as on IE, so if that was the case it shouldn't work on Firefox either. Could you post the raw JavaScript output which the browser receives from the server?