0

我有两张桌子。第一个仅用于标题,因为我没有找到使标题不可滚动的解决方案。第二个包含内容,但在侧面加载时为空。首先是两个表的代码。

            <table width="100%">
                <caption class="splitselection">
                    <b>Downloads</b>
                </caption>
                <thead align="left">
                    <tr> 
                        <th scope="col" width="36%"   align="left"          >Dateiname           </th>
                        <th scope="col" width="32%"   align="left"          >Fortschritt         </th>
                        <th scope="col" id="status" width="22%"align="left" >Status              </th>
                        <th scope="col" width="10%" align="left"            >Ordner &ouml;ffnen  </th>
                    </tr>
                </thead>
            </table>
            <div style="overflow:auto; height:115px;  width:100%" class="downloadFrame">
                <table width="100%" id="download_table" align="center">
                    <tbody align="left">
                    </tbody>
                </table>
            </div>

所以现在我想<tr>用这段代码来捕捉表格中的每个元素:

var interval = window.setInterval(function() {
    $('#download_table > tbody > tr').each(function() {
        alert($(this).find('td')[0].html);
    });
},5000);

我正在创建一个检查特定表格单元的间隔。

在我的警报中,我想检索这个表格单元,但我的警报在这里返回“未定义”。如果我只是写alert($(this).find('td')[0]);它返回我 HTML htmlObjectTableCell

在不添加任何表格的情况下,我的间隔什么也不做。如果我添加一行,我会收到警报。所以对我来说,当我想获取 tablecell html 时一定有问题

然而,我尝试使用 .html .val 和 .text,但得到的结果与以前相同。

4

4 回答 4

1

您正在循环遍历作为直接子元素的每个 tr 到作为 #download_table 的直接子元素的 tbody-element。您的标记显示的是 tbody-element 根本没有任何子元素。

于 2012-12-17T13:22:51.100 回答
1

DOM 元素内容的 HTML 存储在innerHTML属性中,而不是名为 的属性html中,因此您需要将该行更改为:

alert($(this).find('td')[0].innerHTML);
于 2012-12-17T13:25:31.600 回答
1

试试这个:

$(this).find('td').eq(0).html();

或者

$(this).find('td:first-child').html();

顺便说一句,$("foo").html返回对html函数的引用而不是调用它。确保您使用function_name()而不是function_name在您想要实际执行名为function_name.

解释

在 jQuery 中,$('selector')[0], 不返回一个 jQuery 包装的对象,而是一个 PODO(Plain Old Dom Object 有人吗?)。这意味着您不能在返回的对象上调用 jQuery 函数。但是$('selector').eq(0)返回一个 jQuery 包装的对象,因此您可以在其上调用 jQuery 函数。

于 2012-12-17T13:34:51.167 回答
0

<td>表中没有

于 2012-12-17T13:26:21.343 回答