重要的是要注意,$("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()摇摆。非常感谢! –