Side navigation
#1357 closed bug (duplicate)
Opened July 05, 2007 07:13AM UTC
Closed July 20, 2007 03:26PM UTC
Bug in selectors for XML in IE6
Reported by: | art.orlov@gmail.com | Owned by: | john |
---|---|---|---|
Priority: | minor | Milestone: | 1.1.4 |
Component: | core | Version: | 1.1.3 |
Keywords: | xml selectors | Cc: | |
Blocked by: | Blocking: |
Description
Reading post about upcoming 1.2 I've changed XML selectors from XPath-like to CSS-like. And, bug 1346 prevented me from using ">" sign to specify immediate children. So I wrote the following code:
function callback(xmldata) {
var response = $("ut_response", xmldata);
var total = parseInt($("video_list total", response).text());
...
}
This code works goon in FF but is being broken in IE6 with the following jQuery code:
unique: function(first) {
var r = [], num = jQuery.mergeNum++;
for ( var i = 0, fl = first.length; i < fl; i++ )
if ( num != first[i].mergeNum ) {
first[i].mergeNum = num; // broken line
r.push(first[i]);
}
return r;
},
IE6 says that assigning new/unregistered property to XML-node is unsupported operation.
So, I've added surrounding try/catch block to assignment:
try { first[i].mergeNum = num; } catch (e) {} //Fix XML in IE6
as far as I now there are no duplicates in received XML.
Now after new 1.1.3.1 bugfix release I'll rewrite my selectors to use immediate children, but the problem could arise in future.
Could you re-try this with 1.1.3.1? We resolved some problems with selecting child elements in XML documents in that release, so this may have been fixed.