-1

td読み取る行がわかっている場合、特定の列からすべてのセルを読み取るにはどうすればよいですか。

これを説明しましょう:

<tr>
    <td><input type="checkbox" value="0"></td>
    <td>1</td>
    <td>John</td>
    ....
</tr>

ある時点で、値を読み取る必要があることがわかり、その行0の他のすべてを知りたいと思っています。td

だからいくつかのループで私はこれを持っています:

selected[i][0]

それは私に与えています:<input type="checkbox" value="0"> var iから行きます0

すべてのアイテムを入手するには?

私は試してみました:$('tr').eq(i).find('td').eq(1).text()

そして、それは私に正しい価値を与えていません。

4

5 に答える 5

2

プロのヒント: 素晴らしい Firebug コンソールを使用して、選択した要素の直接出力を取得する方法を学びます - これが Javascript を直感的にコード化する方法です :-)

$('tr').eq(i).children('td').children('input').val() 

かもしれませんが、次はあなたの番です。

ここに画像の説明を入力

于 2013-07-14T19:40:56.947 に答える
1

helps次の場合は、 http://jsfiddle.net/sLBgY/を参照してください。

<script>
    function load(){
        var table = document.getElementById("mtable");
        for (var i = 0, row; row = table.rows[i]; i++) {
           if(table.rows[i].cells[0].getElementsByClassName('valTd')[0].value==0){
               for (var j = 1, col; col = row.cells[j]; j++) {
                 alert(table.rows[i].cells[j].innerText);
               } 
            }
        }
    }
</script>

<body onload="load()">
<table id="mtable">    
    <tr>
        <td><input class='valTd' type="checkbox" value="0"></td>
        <td>1</td>
        <td>John</td>
   </tr>
   <tr>
        <td><input class='valTd' type="checkbox" value="1"></td>
        <td>1</td>
        <td>John</td>
   </tr>
 </table>
 </body>
于 2013-07-14T19:52:50.503 に答える
0

これにより、正しい行のすべてのセルが見つかります。

$(function () {
    var found = false;
    $('table tr').each(function () {
        var cells = $(this).children('td');
        if (cells.eq(0).find('input').val() == 0) { // the value you're looking for
            found = cells;
        }
    });
    if (found) {
        alert(found.eq(0).html() + found.eq(1).html() + found.eq(2).html());
    }
});

http://jsfiddle.net/7VmR9/16/

于 2013-07-14T19:53:06.507 に答える
0

あなたのhtmlがこのように見える場合

<tr>
    <td><input type="checkbox" value="0"></td>
    <td>1</td>
    <td>John</td>
</tr>

<tr>
    <td><input type="checkbox" value="0"></td>
    <td>2</td>
    <td>Julie</td>
</tr>

次に、これを行うだけです

   $('tr').each(function( index, element) {
      var $element = $(element),
          checkbox = $element.children(0)[0];
          id = $element.children(1); 
          name = $element.children(2);
   });

デモリンク

于 2013-07-14T19:49:33.147 に答える
0

ある時点で、値 0 を読み取る必要があることがわかり、その行の他のすべての td を知りたいとします。

私があなたを正しく理解していれば、jQuery ライブラリを使用して意図した結果が得られるはずです。

$("td input[value='0']").parent().parent().children("td").each(function(){
    alert($(this).text()); //Replace alert with however you want to output your data
});

説明:

$("td input[value='0']")<input />タグ内に含まれる、属性valueが 0 に設定されたすべての<td>タグを選択します。

.parent()<td>タグに移動します

.parent()<tr>タグに移動します

.children("td")それぞれのタグ<td>に含まれるすべてのタグを選択しますtr

.each(function(){...})<td>それらのタグで何かをします

$(this).text()<td>のテキストを選択します

于 2013-07-14T19:54:26.690 に答える