Il problema e` la quadra dentro il nome.
La cosa non e` JS standard, ma si puo` aggirare l'ostacolo.
Anzitutto occorre che il nome sia SEMPRE racchiuso tra virgolette:
<input type="text" name="filtro[1]">
Anche nel richiamo il nome deve essre racchiuso in virgolette, quindi occore fare:
document.NOMEFORM.elements["filtro[1]"].value =
Nel tuo caso quindi:
window.opener.document.filter.elements["filtro[1]"].value = valore;
Ciao
Michele