我有一个按钮:
<button id="btn:1:uniquenamehere">btn</button>
中间的数字有时会因其他框架内部工作而发生变化。无论中间的数字如何,我都需要能够找到这个按钮。所以我需要通过模式找到它,只有中间数字会改变。所以我需要这样的东西:
document.getElementById("btn:*:uniquenamehere")
我看到了使用jquery的方法,但是我无法使用第三方库。我怎么能用纯javascript做到这一点?
答案 0 :(得分:2)
您可以使用document.querySelectorAll()
:
var elems = document.querySelectorAll('[id$="uniquenamehere"]');
答案 1 :(得分:0)
另外,如果你想愚弄一下,这是一种很好的(如果不是那么有效)方式:
function getButton (buttonid) {
var buttons = document.getElementsByTagName('button');
for (var i = 0; i < buttons.length; i += 1) {
if (buttons[i].id.slice(buttons[i].id.length - buttonid.length) === buttonid) {
return buttons[i];
}
}
return null;
}
<强> JSFiddle 强>