@ ThiefMaster затронул вопрос о том, как вы можете выполнить проверку, но вот фактический код:
function idEndsWith(str)
{
if (document.querySelectorAll)
{
return document.querySelectorAll('[id$="'+str+'"]');
}
else
{
var all,
elements = [],
i,
len,
regex;
all = document.getElementsByTagName('*');
len = all.length;
regex = new RegExp(str+'$');
for (i = 0; i < len; i++)
{
if (regex.test(all[i].id))
{
elements.push(all[i]);
}
}
return elements;
}
}
Это можно улучшить несколькими способами.В настоящее время он проходит через весь dom, но был бы более эффективным, если бы имел контекст:
function idEndsWith(str, context)
{
if (!context)
{
context = document;
}
...CODE... //replace all occurrences of "document" with "context"
}
В этой функции нет проверки / экранирования переменной str
,Предполагается, что он получит только строку символов.