明らかに、要素をループして、ループ内でハンドラーを割り当てることができます。
function onChangeHandler() {
// do some stuff
}
var myCollection = document.getElementsByName("attribute.Identifier Source");
for (var i=0, l=myCollection.length; i<l; i++)
myCollection[i] = onChangeHandler;
または、変更された要素への参照が必要な場合:
function onChangeHandler(event) {
// some browser abstraction
if (!event) event = window.event;
var changedElement = event.srcElement || this;
// do some stuff
}
var myCollection = document.getElementsByName("attribute.Identifier Source");
for (var i=0, l=myCollection.length; i<l; i++) {
myCollection[i].addEventListener('change', onChangeHandler, false);
/* if you want to support older MSIE, you would do some like
var el = myCollection[i];
if (el.addEventListener) {
el.addEventListener('change', onChangeHandler, false);
}
else if (el.attachEvent) {
el.attachEvent('onchange', onChangeHandler);
}
*/
}
document.getElementsByName() は XHTML でのみサポートされていることに注意してください。document.querySelectorAll() または document.getElementsByTagName() を使用することをお勧めします ...