具有动态id的jQuery选择

我有一个动态生成的表单,并且具有动态生成的id(以及可能的类)。 表格是相同的,但他们有相关的ID添加到最后。

如何选择每组输入并为每个输入应用代码?

我正在尝试使用$(’input [id ^ = @ id_airline_for_]’),但无法让它飞起来。 我怀疑我遗漏了一些基本的jQuery知识,这些知识阻碍了我,因为我确信这是动态表单的常见问题。

: : : : -- snip --

编辑:我应该更新,我希望能够在单击输入时执行某些操作,但仅限于最后匹配id的类。

为了简单起见,假设我希望#id末尾带有匹配id的所有输入在单击一个时消失(仅为了参数)。

 $("input[id^='id_airline_for_']").each(function() { var id = parseInt(this.id.replace("id_airline_for_", ""), 10); var airline = $("#id_airline_for_" + id); var flightNumber = $("#id_flight_number_for_" + id); // do stuff with airline and flightNumber s }); 

你可以使用$("input#id_airline_for" + id) (其中id是你的号码,例如8),但是如果你删除标签名称并且只是使用它会更快:

 $("#id_airline_for" + id); 

以下内容将为您提供名称中包含id_airline_for所有输入。

 $("input[id^='id_airline_for']") 

如果您需要在每个表单的基础上执行此操作,您将需要为每个表单提供自己的ID,并以这种方式分组选择它们。

 $("#formJetBlue input[id^='id_airline_for']") $("#formNwa input[id^='id_airline_for']") $("#formOceanic input[id^='id_airline_for']") 

我不认为你应该使用@符号并且你错过了一些引号:

而不是:$(’input [id ^ = @ id_airline_for_]’)

试试这个:$(“input [id ^ =’id_airline_for_’]”)

看到这个:

http://docs.jquery.com/Selectors/attributeStartsWith#attributevalue

选择具有指定属性的元素,其值包含给定的子字符串

 $('input[id *= id_airline_for]').attr('checked', headerChecked); 

它将在’id’属性中选择包含’id_airline_for’字符串的所有元素