我想通過一個變量作爲索引來設置一個有點jQuery的活動行。我有我的變量存儲正確,但似乎無法讓jquery接受參數中的變量。在jQuery中轉義變量
下面是我得到了什麼:
$(this).find("td:eq('storeDex')").addClass("activeRow");
storeDex是可變的,如果我把一個正常的數字有它似乎做工精細,我想也許我需要逃避vaiable一些如何,但我似乎無法弄清楚如何去做。任何幫助將非常感激。謝謝!
我想通過一個變量作爲索引來設置一個有點jQuery的活動行。我有我的變量存儲正確,但似乎無法讓jquery接受參數中的變量。在jQuery中轉義變量
下面是我得到了什麼:
$(this).find("td:eq('storeDex')").addClass("activeRow");
storeDex是可變的,如果我把一個正常的數字有它似乎做工精細,我想也許我需要逃避vaiable一些如何,但我似乎無法弄清楚如何去做。任何幫助將非常感激。謝謝!
從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>
你需要終止你的字符串,追加變量並用另一個字符串完成你的jquery選擇器。
$(this).find("td:eq('" + storeDex + "')").addClass("activeRow");
好的,我終於在下面的答案中得到了我的代碼片段。基本上就像你說的那樣,你必須逃避變量,但它不會被稱爲轉義,它實際上是jQuery選擇器字符串的串聯,以將變量作爲字符串包含在字符串中。 – Zack 2014-10-02 21:55:06