-3

尝试在我的 javascript 函数中使用正则表达式替换 td 的内容。我正在用这个...

var re = /<td id="idreplaceme">.+?<\/td>/gi;
oldDivContent = oldDivContent.replace(re,'<td id="idreplaceme"></td>');

这适用于 FF 和 Chrome,但不适用于 IE8。如何在 IE8 中完成这项工作?

编辑: OldDivContent 是一个字符串

4

2 回答 2

3

为什么不document.getElementById('idreplaceme').innerHTML = ''

于 2012-06-21T16:13:20.460 回答
0

尝试稍微不同的正则表达式:

var re = /<td id="idreplaceme">[^<]+<\/td>/gi;
oldDivContent = oldDivContent.replace(re,'<td id="idreplaceme"></td>');

或者假设律师不希望您发布 的任何部分oldDivContent,这里有一个 JavaScript 函数应该可以代替正则表达式:

function removeContentOfIdentifiedTDs(content, id) {
    var d = document.createElement('div'),
        tr = {},
        td = {},
        i = 0;
    d.innerHTML = content; //add content to div
    td = d.getElementsByTagName('td');
    for (i = 0; i < td.length; i += 1) {
        if (td[i].id === id) { //if id matches
            td[i].innerHTML = ''; //remove content
        }
    }
    return d.innerHTML; //return original html minus removed content
}
removeContentOfIdentifiedTDs(oldDivContent, 'idreplaceme');
于 2012-06-21T16:12:14.280 回答