簡體   English   中英

如何返回元素ID而不是[object HTMLDivElement](Prototype.js)

[英]How to return Element ID instead of [object HTMLDivElement] (Prototype.js)

我知道這很簡單,但我無法繞過它。 目前以下代碼返回“[object HTMLDivElement],[object HTMLDivElement]”我希望它返回“div1,div2”。 有什么想法嗎? 多謝你們。

<HTML>
<HEAD>
<script type="text/javascript" src="path_to/prototype.js"></script>
<script>
function linkClick ()
{
    alert($$('div.basic'));
}
</script>
</HEAD>
<BODY>
   <div id="div1" class="basic" onclick="linkClick();"></div>
   <div id="div2" class="basic" onclick="linkClick();"></div>
</BODY>
</HTML>

我有同樣的問題,有一個簡單的解決方案:

如果varElement是包含[HTMLDivElement](或其他DOM對象)的對象,只需添加'.id'

例如

varElement.id 

原型專門針對此進行了優化:

$$('div.basic').pluck('id')

如果我正確地閱讀了你的問題,你需要一個div ID列表,而不是用逗號分隔的一串id。

var ids = $$('div.basic').collect(function(el) { return el.id; }); //array of ids

alert(ids.join(','));

collectmap的另一個名稱,它允許您通過對每個元素應用“selector”函數將一種類型的集合轉換為另一種類型。

alert($$('div.basic').invoke('identify').join(',');

調用將按名稱調用函數。 識別功能將提供id。 在數組上調用時,它將返回其數組的id。 Join將它們變成一個字符串,中間有逗號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM