我正在为jQuery驱动的表单开发网格系统
当它们的类名中的数字大于或等于已经存在的变量firstNum和secondNum时,我需要将某个类添加到所有的中。
每个类都有一个唯一的类,其格式为'firstNumber-secondNumber‘,例如'2-5’或'4-1‘
这是我正在寻找的方向的一小段-方括号中的部分将使这一点变得更清楚。
$('td.[GREATER THAN OR EQUAL TO firstNum]-[GREATER THAN OR EQUAL TO secondNum]').addClass('selectable');感谢任何帮助-我想知道过滤是否是下一步的途径(?) -但目前还不能完全达到..!
HTML
<tr>
<td class="1-1">cell data</td>
<td class="1-2">cell data</td>
<td class="1-3">cell data</td>
</tr>
<tr>
<td class="2-1">cell data</td>
<td class="2-2">cell data</td>
<td class="2-3">cell data</td>
</tr>
<tr>
<td class="3-1">cell data</td>
<td class="3-2">cell data</td>
<td class="3-3">cell data</td>
</tr>发布于 2013-05-03 21:18:55
使用filter并假设您的td上只有一个类,您可以这样做:
$('td').filter(function(){
var c = this.className;
if (!c) return false;
var tokens = c.split('-');
if (parseInt(tokens[0])>firstNumber
&& tokens.length>0
&& parseInt(tokens[1])>secondNumber
) return true;
return false;
}).addClass('selectable');但这是沉重的。在不了解整个上下文的情况下,很难提出相关的命题,但在这种情况下,数据属性就会出现在脑海中。
编辑,查看HTML,您似乎只对行号和单元格编号感兴趣。这意味着你可以这样做:
$('tr:gt('+firstNumber+')').find('td:gt('secondNumber')').addClass('selectable');https://stackoverflow.com/questions/16359705
复制相似问题