如何获取包含特定文本的ID的元素? (原型)

时间:2010-10-19 18:18:31

标签: javascript prototypejs css-selectors

我有一组3个单选按钮,带有以下元素ID:

id='details_first'
id='details_second'
id='details_third'

如何获取ID以'details_'开头的所有元素?

修改

我实际上要做的是: 每个单选按钮都有一个关联的div,我想在单击单选按钮时显示该div。有一次只有一个单选按钮处于活动状态,因此只显示该单选按钮的div(所有其他按钮应隐藏)。所以我的代码是: (对不起,它有点宽):

<input id="details_first" name="details" type="radio" value="first"  onclick="$('details_*').hide();$('details_first_div').show();" />First<br/>
<div id="details_first_div" style="display:none">div for details_first</div>

<input id="details_second" name="details" type="radio" value="second"  onclick="$('details_*').hide();$('details_second_div').show();" />Second<br/>
<div id="details_second_div" style="display:none">div for details_second</div>

还是有更好的最佳实践方法来做这种事情吗? (我正在使用Ruby on Rails)。 也许通过name属性选择 - 但是如何?

1 个答案:

答案 0 :(得分:2)

您应该在表单上创建一个管理所有点击的事件处理程序。您应该进行选择,因为您只关心<input>的{​​{1}}字段。

然后,您可以隐藏name == details中所有以指定ID开头的div,并仅显示<form> + clicked element's id结尾的div。

最后,您可以从标记中删除事件处理程序。

查看 working demo

_div