1

現在、データの列または行の色を変更する (おそらく最終的には削除/非表示にする) アイデアを考えています。現在、私の目的は列です。これまでのところ、部分的には機能していますが、完全には機能していません

これとともに:

$('#'+arry[0]+' tr td:eq('+arry[1]+')').css({"background-color":"FF0"});

列に影響を与えることはできますが、その列内のすべての行ではなく、1 つの行のみに影響を与えることができます。また、「tbody」内の行/列に影響を与えているようですが、3 つすべてに影響を与える必要がある「thead」または「tfoot」には影響していないようです.

私が使用しているテーブルの例は次のようになります。

<table id="testerTable">
    <thead>
        <th>First</th>
        <th>Second</th>
        <th>Third</th>
        <th>Fourth</th>
        <th>Fifth</th>
    </thead>
    <tbody>
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
            <td>4</td>
            <td>5</td>
        </tr>
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
            <td>4</td>
            <td>5</td>
        </tr>
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
            <td>4</td>
            <td>5</td>
        </tr>
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
            <td>4</td>
            <td>5</td>
        </tr>
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
            <td>4</td>
            <td>5</td>
        </tr>
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
            <td>4</td>
            <td>5</td>
        </tr>
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
            <td>4</td>
            <td>5</td>
        </tr>
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
            <td>4</td>
            <td>5</td>
        </tr>
    </tbody>
</table>

私のアプローチはシンプルだと思っているので、いくつかのアイデアが必要です。これは最終的にdatatables.netのデータテーブルで使用されますが、最初にこの部分を理解する必要があります.

****編集****

変数は現在、テーブル IDarryである他の何かの rel 属性から取得されており、この場合は 0-4 の列の位置です。arry[0]arry[1]

4

3 に答える 3

1

デモ jsBin

var string= 'testerTable::2'; // your data // test with: 0,1,2,3,4
var arry= string.split('::'); // split to separate values

var $tr = $('#'+arry[0]+' tr');


$('#'+arry[0]+' th').eq(arry[1]).css({"background-color":"FF0"});

$tr.each(function(el){ // iterate through all 'tr' to find relative 'td' .eq()
  $(this).find('td').eq(arry[1]).css({"background-color":"FF0"});
});
于 2012-04-25T21:31:05.637 に答える
1

<colgroup>すばやく簡単に操作できるように、列に色を付けるために使用します。

http://www.w3schools.com/tags/tag_col.asp

たとえば、次のように言えます。

<colgroup>
  <col style="background-color:FF0" />
  <col span="4" />
</colgroup>

jqueryまたはその他の手段でcolgroup全体を編集します。

于 2012-04-25T21:17:07.270 に答える
0

列 1 の各要素にクラス 'c1' を指定してから $('.c1').css を実行するだけで済みます。これにより、th/tr/td の区別をいじる必要がなくなります。もちろん、すべての列に対してこれを行います。

ところで、それは「配列」と綴られています:)

于 2012-04-25T21:24:01.907 に答える