1

下面我有一个简单的表,我试图循环并获取每行中每个单元格的值(如果有的话)<td>s

但是我得到一个错误find,说不存在,并且添加了 jquery。你能帮忙吗?谢谢

$(document).ready(function () {
    var x = $('table tr:has(td)');
    $.each(x, function (i, v) {

        alert(
        v.find('td').eq(0).text()); + " ----" + v.find('td').eq(1).find('option:selected').val(););
    });

});

<table>
    <tbody>
        <tr>
            <th>a</th>
            <th>b</th>
        </tr>
        <tr>
            <td>test</td>
            <td>
                <select>
                    <option value="yes">yes</option>
                    <option selected="selected" value="no">no</option>
                </select>
            </td>
        </tr>
        <tr>
            <td>test</td>
            <td>
                <select>
                    <option value="yes">yes</option>
                    <option selected="selected" value="no">no</option>
                </select>
            </td>
        </tr>
        <tr>
            <td>test</td>
            <td>
                <select>
                    <option value="yes">yes</option>
                    <option selected="selected" value="no">no</option>
                </select>
            </td>
        </tr>
        <tr>
            <td>test</td>
            <td>
                <select>
                    <option value="yes">yes</option>
                    <option selected="selected" value="no">no</option>
                </select>
            </td>
        </tr>
        <tr>
            <td>test</td>
            <td>
                <select>
                    <option value="yes">yes</option>
                    <option selected="selected" value="no">no</option>
                </select>
            </td>
        </tr>
    </tbody>
</table>
4

2 回答 2

1
$(document).ready(function () {
    $('table tr:has(td)').each(function (tr) {
        $('td', tr).each(function (td) {
          alert($(td).text());
        });
    });
});
于 2012-07-31T12:06:54.227 回答
1

v是 DOM 上的元素,因此您需要将其包装到$函数中以链接另一个 jQuery 方法:$(v).find(...)

注意:你也可以写$(this).find(...)

于 2012-07-31T12:02:37.957 回答