2011-08-01 50 views
1

以下是我的功能應選擇DIVJquery的變量不選擇DIV

var t=1; 
var problemId=1234; 
var x="#problemTypeDtl&" +t+"_"+problemId; 
$(x).Text('bites'); 

這裏的線是div:

<tr> 
    <td colspan="2"> 
     <div class="problemStatusType" id="problemTypeDtl&1_1234"></div> 
    </td> 
</tr> 

它看起來像選擇是不選擇div ...我做錯了什麼?

在此先感謝。

+0

嘗試使用小寫'text'? – sje397

+5

很確定你的div ID中的&符號不合法(取決於你的doctype),這反過來會破壞對'getElementById()'的任何使用。見http://stackoverflow.com/questions/70579/what-are-valid-values-for-the-id-attribute-in-html/79022#79022 – Phil

+1

絕對非法:http://www.w3.org/ TR/XML /#NT-AttValue –

回答

1

你爲什麼不創建一個名爲problemTypeDt一個包羅萬象類problemStatusType一起(因爲我不知道你是否需要保留,對其他內容)和使用問題ID以及ID。所以

腳本

var t=1; 
var problemId=1234; 
var x=t+"_"+problemId; 
$("div.problemTypeDt#"+x).Text('bites'); 

標記

<tr> 
    <td colspan="2"> 
     <div class="problemStatusType problemTypeDt" id="problemTypeDtl&1_1234"></div> 
    </td> 
</tr> 

如上評論指出,這是非法使用的符號。

2

嘗試逃離符號:

var x="#problemTypeDtl\\&" +t+"_"+problemId;