2011-01-06 31 views
1

非常快速且希望是簡單的問題。在遍歷JQuery中的元素時使用變量

我想通過一些預定義變量按值選擇一個隱藏的輸入。

var id = $("#puid").val(); 
$('input[value=id]').closest('tr').css({'background-color':'red'}); 

我認爲上面的代碼會起作用,但是它沒有將處理id作爲變量。做這件事的正確表示法是什麼? (我已經通過用實際數字替換id來測試代碼,其餘代碼工作正常)。

回答

5

將它從引號中刪除,因此該變量連接到字符串中。他們的方式你有它,它正在尋找字面值「ID」,並沒有辦法知道你在談論一個變量。

$('input[value='+id+']') 

編輯:更多信息 - 你可以把雙引號將ID部分,琴絃裏面,在尼克的回答是,這會使得它的安全與非數字ID使用。我省略了它們,因爲您的示例不需要它們,正如您所說的,您的ID是數字。

+1

我至少會在這裏用引號,因爲你不知道那個變量包含了什麼。 – 2011-01-06 16:58:16

3

與變量將字符串選擇,就像這樣:

var id = $("#puid").val(); 
$('input[value="' + id + '"]').closest('tr').css({'background-color':'red'}); 

目前,它看起來這正是value="id",但你希望你的變量存在。