0

テキストのみを連続して呼び出すアルゴリズムが必要です。

私の td は数字とテキストで構成されています。「td」にはテキストのみが必要です。

デモ: http://jsfiddle.net/3yYFY/1

例えば:

2 行目= アキュア、アリゲーター、アナグマ

3 行目= シマウマ、ゾウ

テーブルに多数の行 (td) があり、テキストが特定の列に配置されていません

HTML :

    <table id="docsTable">
    <tr bgcolor="#E7DDCC" class="liste-0">
        <td align="center"><input type="checkbox"/></td>
        <td>Document Title 1</td>
        <td>567</td>
    </tr>
    <tr bgcolor="#E7DDCC">
        <td align="center"><input type="checkbox"/></td>
        <td>accure</td>
        <td>134</td>
        <td>alligator</td>
        <td>badger</td>
    </tr>
    <tr bgcolor="#E7DDCC">
        <td align="center"><input type="checkbox"/></td>
        <td>Zebra</td>
        <td>231</td>
        <td>Elephant</td>
    </tr>
</table>
<input type='button' id='btnTest' value='Get Rows' />

jQuery :

$(function() {
    $('#btnTest').click(function() {
        var arr = $('#docsTable tr').has('input[type="checkbox"]:checked').map(function() {
            alert($('td:eq(1)', this).text())
        });

    });
});​
4

2 に答える 2

2

最終更新

これを使用してください:http: //jsfiddle.net/uJdj9/2/

$(function() {
    $('#btnTest').click(function() {
        var arr = $('#docsTable tr').has('input[type="checkbox"]:checked').map(function() {
            var text = "";
            $(this).find('td').each(function(){
                var txt = $(this).text();
                if(txt && !txt.match(/\d/g))
                  text += txt + ', ';
            })
            text = text.replace(/,([^,]*)$/,'');
            alert(text);
        });

    });
});​

または、tdを破棄することがわかっている場合は、次のようにします。

デモ:http: //jsfiddle.net/uJdj9/

  $(function() {
    $('#btnTest').click(function() {
        var arr = $('#docsTable tr').has('input[type="checkbox"]:checked').map(function() {
            var text = "";
            $('td',this).not(':eq(2)').each(function(){
                text += $(this).text()?$(this).text() +', ':'';
            })
            alert(text);
        });

  });
});​
于 2012-11-22T13:42:06.677 に答える
1

このコードを試してください

$(function() {
$('#btnTest').click(function() {
    var arr = $('#docsTable tr').has('input[type="checkbox"]:checked').map(function() {
        alert($('td', this).text())
    });

});

}); </p>

http://jsfiddle.net/3yYFY/4/

于 2012-11-22T13:39:38.567 に答える