2009-09-02 91 views
0

我想选择一个带有Prototypejs及其$$函数的输入。如何用Prototypejs选择名称类似“abc []”的输入?

我能够做到这一点:

$$('input') 

但我想在我的搜索更精确,与输入的名称。 我想选择输入的名称为“[]数组”:

$$('input[name="array[]"]') 

我认为[和]名正在创建的烦恼,因为结果我得到的是,如果我这样做是相同的:

$$('input') 

如何选择名称如“something []”的输入?

+1

只有IE在原型中表现出这种行为。 '$$('input [name =“array []”]')'适用于所有其他浏览器。你使用的是什么浏览器和什么样的Prototype版本? – 2009-09-02 09:29:55

+0

原型1.5.1与Firefox。 也试用1.6.0.3。 – kevin 2009-09-02 09:52:14

+0

哪个Firefox?在我的FF 3.0.13上使用Prototype 1.5.2(win)。 – 2009-09-02 09:59:18

回答

2

它似乎是一个原型1.6.0.3和可能更低版本的错误。

原型工作> = 1.6.1

3

你可以多一点冗长及用途:

$$('input').findAll(function (o) { return o.name=="array[]"; }) 
+0

是的,我希望能够不这样做。 – kevin 2009-09-02 09:20:19

0

你可能寻找

$$('input[name="array[]"]')[0] 

因为$$()返回输入元素的数组?适用于我。

+0

也适用于我,但正如我描述的那样,它会返回文档中的每个输入元素。 我想要一个名为array []的元素的数组,而不是其他元素。 – kevin 2009-09-02 09:21:48

+0

似乎不适用于原型选择器。顺便说一句,'$('input [name =“array []”]')'在jQuery中有效。 – 2009-09-02 19:35:25

相关问题