将 HTML 更新为:<td id="ElementX1X1" class="my_msg" >...
已编辑 - 解决损坏的框架:
<tr>
<td class="my_msg" align="left">
<id="ElementX1X1">
some content
</td>
<td class="my_msg" align="left">
<id="ElementX1X2">
some content
</td>
</tr>
如果要查找第 1 行第 2 列,可以使用一些 jQuery 作弊来检查元素的内容:
var row = 1;
var column = 2;
var matched = null;
$(".my_msg").each({
if($(this).html().indexOf('<id="ElementX' + row + 'X' + column + '">')!=-1){
matched = $(this);
}
});
match 将指向您要查找的元素或 null - 但是如果您已经知道单元格的行和列 ID,那么为什么不直接遍历 DOM?
var row = 1;
var column = 2;
var matched = null;
var table = document.getElementsByTagName("TABLE")[0]; // up to you how your find it
try {
matched = table.getElementsByTagName("TR")[row-1].getElementsByTagName("TD")[column-1];
}
catch(err) {
// not found
}
或蛮力方式(即修复框架输出):
var table = $("#tableid"); // up to you how your find it
table.html(table.html().replace(/">\n<id="/g,'" id="'));
你的代码现在是:
<tr>
<td class="my_msg" align="left" id="ElementX1X1">…</td>
<td class="my_msg" align="left" id="ElementX1X2">…</td>
…
所以你可以使用
$("#ElementX2X1");
选择第一行,第二列
两者都不是特别优雅,但应该在等待修复错误框架时完成工作;)