Index: jsf-api/resources/jsf.js =================================================================== --- jsf-api/resources/jsf.js (revision 7523) +++ jsf-api/resources/jsf.js Sat Jul 11 16:02:09 EEST 2009 @@ -331,21 +331,20 @@ var parent = d.parentNode; // Trim space padding before assigning to innerHTML var html = str.replace(/^\s+/g,'').replace(/\s+$/g,''); + var parserElement = document.createElement('div'); var tableElements = ['td', 'th', 'tr', 'tbody', 'thead', 'tfoot']; - var isInTable = tableElements[d.tagName.toLocaleLowerCase()]; + var isInTable = tableElements.indexOf(d.tagName.toLocaleLowerCase()) >= 0; if (isInTable) { - temp = document.createElement('table'); - temp.innerHTML = html; - var newElement = temp.firstChild; + parserElement.innerHTML = '' + html + '
'; + var newElement = parserElement.firstChild; //some browsers will also create intermediary elements such as table>tbody>tr>td while ((null != newElement) && (id != newElement.id)) { newElement = newElement.firstChild; } parent.replaceChild(newElement, d); } else { - temp = document.createElement('div'); - temp.innerHTML = html; - parent.replaceChild(temp.firstChild, d); + parserElement.innerHTML = html; + parent.replaceChild(parserElement.firstChild, d); } } };