重要的是要注意,$("div[id^='highc']")
返回a jQuery object包含DOM elements(如果選擇了任何內容)的集合。由於jQuery對象類似對數組,$("div[id^='highc']")[0]
將返回jQuery對象中的第一個DOM元素。
您在可能遇到的問題是您不能在本機DOM元素上使用jQuery方法(如.append()
)。換言之,如果您要串聯在第一DOM element的.append()
方法在jQuery對象(即,$("div[id^='highc']")[0].append(...)
),將收到錯誤消息,說明.append()
不是函數:
Uncaught TypeError: $(...)[0].append
is not a function
由於.append()
方法操作在jQuery對象上,您可以使用.eq()
method以基於其索引檢索包含該元素的jQuery對象。
$("div[id^='highc']").eq(0).append('Text');
或者,一個醜陋的做法是爲了返回一個jQuery對象與$()
包裝的DOM元素:
$($("div[id^='highc']")[0]).append('Text');
旁註:
在你的問題,你使用$("div[id^='highc'][0]")
和$("div[id^='highc']")[0]
。我假設它是一個錯字,而你的意思是後者,因爲$("div[id^='highc'][0]")
不會返回任何元素,因爲元素可能沒有[0]
屬性。您可能試圖在選擇器外部使用.append()
方法與[0]
。
.eq()搖擺。非常感謝! –