2011-08-15 51 views
2

我有很多与自动生成的ID形式的输入,其看起来如下:为什么jQuery元素[]选择器在这种情况下不起作用?

<input type="text" id="ctl00_ctl00_rptVariants_ctl00_txtQuantity" />

如果我使用下面的jQuery选择,它找到元素:

$("#ctl00_ctl00_rptVariants_ctl02_txtQuantity").val("666");

然而如果我使用以下任一项,则找不到任何元素,但所有文档都暗示它应该有效:

$("element[id='ctl00_ctl00_rptVariants_ctl02_txtQuantity']").val("666");

$("element[id$='_txtQuantity']").val("666");

的目标是选择所有输入字段,他们的标识在_txtQuantity结束。

谢谢!

+2

感谢人们 - 我误解了我正在阅读的页面,并认为“元素”是从字面上理解的,并非我必须用元素类型来替换它。他们应该把它放在斜体或其他东西!我实际上找不到这个选择器的官方文档(这很难谷歌“jquery元素选择器” - 太泛用)。 – NickG

回答

5

element涉及标签。

在这种情况下使用input

这样的:

$("input[id$='_txtQuantity']").val("666"); 
2

由于不是<element>标签,但<input>的,你应该使用:

$("input[id$='_txtQuantity']").val("666"); 

然而,由于id s为独特的,这应该就足够了:

$("[id$='_txtQuantity']").val("666"); 
相关问题