首页 > 解决方案 > 周选择器 CSS

问题描述

我们使用的日期选择器没有我们需要的星期选择器功能。我想知道我们是否可以通过 CSS 伪造一个星期选择器,因为用户只能选择星期六。

我不能简单地定位并突出显示一行,因为服务器生成的代码如下所示:

<tr>
  <td>1</td>
  <td>2</td>
  <td>3</td>
  <td>4</td>
  <td>5</td>
  <td>6</td>
  <td>7</td>
  <td>8</td>
  <td>9</td>
  <td>10</td>
  <td>11</td>
  <td>12</td>
  <td>13</td>
</tr>
<tr>
  <td>14</td>
  <td>15</td>
  <td>16</td>
  <td>17</td>
  <td>18</td>
  <td>19</td>
  <td>20</td>
  <td>21</td>
  <td>22</td>
  <td>23</td>
  <td>24</td>
  <td>25</td>
  <td>26</td>
</tr>
<tr>
  <td>27</td>
  <td>28</td>
  <td>29</td>
  <td>30</td>
  <td>31</td>
</tr>

是否可以写一些类似tr:focus:nth-child(6)<tr>n-6 到 n 的东西,这样我就可以突出整个星期?

谢谢!

标签: cssdatepickercalendaryuiweek-number

解决方案


我不认为这只能通过 CSS 来完成。希望这可以解决这个问题,这是一个通过 jquery 完成的小提琴(虽然只是化妆品亮点)。

这是我的小提琴 https://jsfiddle.net/too4svgm/1/

$("table td").click(function() {

 $tds = $(this).parent().parent().find("td");
  var a = $tds.index(this);
  var c = a - 6;
  $tds.css("background-color", "inherit");

  $tds.filter(function(index) {
    var b = (index <= a) && (index >= c);
    return b;
  }).css("background-color", "green");    

});

推荐阅读