我试图将一个变量作为索引传入,以设置一个带有一点jquery的活动行。我的变量存储正确,但似乎无法让jquery接受参数中的变量。
这就是我所拥有的:
$(this).find("td:eq('storeDex')").addClass("activeRow");
storeDex是变量,如果我放下一个正常的数字,它似乎工作正常,我想也许我需要逃避可变的一些如何,但我似乎无法弄清楚如何做到这一点。任何帮助将非常感激。谢谢!
答案 0 :(得分:6)
来自jQuery:eq选择器文档http://api.jquery.com/eq-selector/
$( "td:eq( 2 )" ).css( "color", "red" );
所以我会在你的例子中省略单引号,结果如下:
$(this).find("td:eq(" + storeDex + ")").addClass("activeRow");
var storeDex = 2;
$(function () {
$("td:eq(" + storeDex + ")").addClass("activeRow");
});
.activeRow {
background-color:yellow;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
<tr>
<td>Table cell 1</td>
<td>Table cell 2</td>
<td>Table cell 3</td>
<td>Table cell 4</td>
</tr>
</table>
答案 1 :(得分:4)
您需要终止字符串,附加变量并使用另一个字符串完成jquery选择器。
$(this).find("td:eq('" + storeDex + "')").addClass("activeRow");