I'd have to see the actual code but faced to a similar problem I had to get rid of jQuery.load(). Instead, I used jQuery.get() with "html" data type and wrote my own callback, where I injected the data via .innerHTML. Doing so, I also hit another bug (it was a <select> tag and IE won't allow .innerHTML on it) so I wrote an ugly workaround.
Resulting code was something like this:
// Fetch data (GET method allows me to use browser cache)
$.get(url, get, function(htmlValues, txtStatus){
that.populateSelects(htmlValues, that.selectContainers);
}, "html");
// Create <select>
var select = $('<span><select disabled="disabled"></select></span>');
$("<option>").attr("value", "").text("Loading...").appendTo(select.find("select"));
// Populate <select>
that.populateSelects = function(values, selectContainers){
var span, select, tags;
for(var i=0, len=selectContainers.length; i<len; i++){
span = selectContainers[i];
if($.browser.msie){
tags = span.innerHTML.match(/^(<select[^>]+>).*(<\/select>)$/i);
span.innerHTML = tags[1] + values + tags[2];
select = span.firstChild;
}else{
select = span.firstChild;
select.innerHTML = values;
}
$(select).removeAttr("disabled");
}
}