最も効率的な方法でプレーンな JavaScript でこの関数を書くのを手伝ってくれませんか。
//Selects all elements matched by <input> that have a name value
//exactly equal to myname.
$("input[@name=myname]")
最も効率的な方法でプレーンな JavaScript でこの関数を書くのを手伝ってくれませんか。
//Selects all elements matched by <input> that have a name value
//exactly equal to myname.
$("input[@name=myname]")
var els = document.getElementsByTagName("input"),
arr = [];
for (var i = 0, l = els.length; i < l; i++) {
if (els.name === "myname") {
arr.push(els);
}
}
console.log(arr);
または最新のブラウザの場合:
var arr = document.querySelectorAll("input[name='myname']");
console.log(arr);
これはあなたが探しているものですか:
document.getElementsByName("myname");
フォーム内の各要素に一意の名前があるとすると、この方法が最速です。
var element = document.MyForm.getElementsByName('myname')[0];
document.querySelectorAll()
name
異なるタグの要素で共有されている場合は高速になる可能性がありますが、サポートは制限されています。