在我的搜索中,我发现了很多关于如何查找以特定字符串结尾的元素的问题/答案。我已经进行了快速搜索,但没有找到有关如何查找以变量结尾的元素的任何具体信息。我确实找到了this question/answer关于如何在 jQuery 选择器中使用 Javascript 变量,但我无法让它工作,我想知道这是否是因为我正在尝试处理一组我已经过滤到的元素。
以下是我已过滤的元素的一些 ID:
["ms-goal-select-0", "ms-goal-input-0", "ms-goal-select-1", "ms-goal-input-1", "ms-goal-select-2", "ms-goal-input-2"]
这是我想用来查找和使用选择和输入元素的 for 循环(开始):
for (var x=0;;x++) { //will break when element(s) not found
selectEl = filteredElements.find('[id$="select-' + x + '"]');
inputEl = filteredElements.find('[id$="input-' + x + '"]');
....
但是当x==0
时,上面并没有找到从第一次迭代开始的元素。我做错了什么?
最佳答案
尝试使用filter
而不是find
:
for (var x=0;;x++) { //will break when element(s) not found
selectEl = filteredElements.filter('[id$="select-' + x + '"]');
inputEl = filteredElements.filter('[id$="input-' + x + '"]');
....
Find 仅查找 filteredElements
中元素的匹配子元素,而 filter
则查找元素本身。
关于javascript - 查找以变量结尾的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32634389/