Prototype.js:选择id以?开头的元素?

时间:2012-09-22 16:09:34

标签: javascript prototypejs selector

有像{/ 1}这样的属性id的标签

<span id="attr35"></span>
<span id="attr44"></span>
<span id="attr23"></span>

需要像这样设置样式(最后两位数字可能是任意的)

$("span[id=attr???]").setStyle({'display':'inline'});

有可能吗?

3 个答案:

答案 0 :(得分:10)

您使用有效的Selectors API选择器。

$("span[id^=attr]")

如果您想要多个匹配项,请使用$$

$$("span[id^=attr]")

哎呀,还有一个问题。如果您获得多个匹配项,则应使用.invoke。您无法直接在返回的集上调用setStyle

$$("span[id^=attr]").invoke("setStyle", ...)

答案 1 :(得分:4)

从版本1.5.1开始,$$ function支持属性 - startswith-selector ^=

$$('[id^="attr"]').invoke("setStyle",{display:'inline'});

答案 2 :(得分:2)

$$('[id^="attr"]').invoke("setStyle",{'display':'inline'});