Il codice dovrebbe essere a posto. Le parentesi quadre ci possono stare (salvo che non puoi usare il nome in un oggetto, ma solo in una stringa), il riferimento a this.form e` corretto (e in sintonia con l'uso che ne fai nella funzione).

L'unico dubbio che ho e` se la select e` effettivamente il terzo campo del form.

Prova a sostituire elements[2] con elements['numAgenti[]'].

Che browser stai usando ora? Potresti usare getElementsById() ?

Ciao
Michele