我正在构建一个HTML表单,并且对于其中的一个部分,div内的一组HTML输入字段需要被推送到一个数组。 div和所有字段在创建时都会获得唯一的ID /名称 - 特别是其中一个输入是select。如何使用jQuery访问存储在数组中的元素?
所有这些工作正常 - 字段被创建并推送到数组,一切id'd正确等,但我似乎无法访问选择元素的jQuery更改函数应该来之后,在字段创建后。我测试了一个内联Javascript“onchange = myFunction()”类型的东西,这是能够访问选择元素 - 我得到它为什么这个工程,但它不会是一个可接受的解决方案...我真的需要使用$ (“#id”)。更改功能。
如何使用jQuery访问存储在数组中的select元素?
this['input_array' + siteName] = [];
for (y = 0; y < numberFound; y++){
this['input_array' + siteName].push('<div id="'+routeValue+''+siteName+'Details'+y+'" class="details">Species: <select id="'+siteName+'Species'+y+'" name="species['+y+']" data-speciesNumber="'+y+'">'+speciesList+'</select></div>);
$("#"+siteName+"Species"+y+"").change(function(){
species = this.value;
speciesNumber = this.getAttribute("data-speciesNumber");
siteSpeciesNumber = displayName + "" + species + "" + speciesNumber;
document.getElementById(""+siteName+"compileField"+speciesNumber+"").value = siteSpeciesNumber;
});
};
$("#"+routeValue+""+siteName+"Details").append(this['input_array' + siteName]);
你的代码是什么? – ashkufaraz
*我会尽量简单地解析它,因为我的代码有点混乱,宁愿不必让任何人试图通过它来阻止它。*阅读:http:// stackoverflow。 com/help/mcve如果你不显示至少最小的代码和意图,就不可能找出问题所在。 – Shashank
而不是'$(“#id”)。change';去'$(document).on(“change”,“#id”,function(){...你的代码...});' – vijayP