Object.prototype.getElementsByName2 = function (name) { var elements = document.getElementsByName(name); var resultat = new Array(); for (i=0; i<elements.length; i++) { if (elements[i].isChildOf(this)) { resultat.push(elements[i]); } } return resultat; } Object.prototype.isChildOf = function (parent) { var child = this; while (typeof (child = child.parentNode) != "undefined" && child != null) { if (child == parent) { return true; } } return false; }
var list = document.getElementById(id).getElementsByName2(name); for (i=0; i<list.length; i++) { // Pour chaque élément trouvé }
function getElementsByName (obj, name) { var elements = document.getElementsByName(name); var resultat = new Array(); for (i=0; i<elements.length; i++) { if (isChildOf(elements[i], obj)) { resultat.push(elements[i]); } } return resultat; } function isChildOf (obj, parent) { var child = obj; while (typeof (child = child.parentNode) != "undefined" && child != null) { if (child == parent) { return true; } } return false; }
var list = getElementsByName(document.getElementById(id), name); for (i=0; i<list.length; i++) { // Pour chaque élément trouvé }