0

我正在创建一个交叉矩阵,我将在其中交叉条目;像男性和女性。我使用动态生成的表格来做到这一点,其中每个单元格都与女性的十字架有关。

看起来像这样:

Female/Male | Male1 | Male2 |
------------------------------
Female1     |   x   |   x   |
------------------------------
Female2     |   x   |   x   |
-----------------------------

上面是一个表格,每个单元格都包含一个用于标识十字的复选框。

下面是我用来使用 php 生成表格的代码:

<table>
<?php
    foreach($females...){
       echo "<tr>";
       ...so on
       //set up the rows and headers
       foreach($males...){
              echo "<td ...><input type='checkbox'../></td>
              ..and so on
       }    
    }

?>
</table>

单击其中的复选框后,我需要将单元格着色为绿色或红色。我如何在Jquery/Javascript 中做到这一点?还有,我如何识别每个单元格,并知道它所属的值(交叉)?如果它是动态的 - 男性和女性的数量是不确定的并且是不断变化的,因此单元格和复选框的数量也是不确定的?

4

1 回答 1

1

这假设您想要在选中时执行绿色,不选中时执行红色。你没有确切地告诉我们是哪个。

找到复选框的父级。我总是使用 parents() 这样做,因为如果稍后将一个元素添加到堆栈中,您的代码就会搞砸并且您不知道为什么。

<td ...><input type='checkbox' 
         onclick="$(this).parents('td').css('background-color', $(this).is(':checked') ? 'green' : 'red');" />
</td>

在必要的地方添加转义引号以使其与 php 的 echo 命令一起使用。

于 2013-10-03T04:09:39.967 回答