allora... file try.htm (cioè quello di partenza)

codice:
<html>
<head>
<title>Documento senza titolo</title>
<script language="javascript">
function apriFinestra() {
// apre la finestra, qui puoi cambiare la visualizzazione grafica, guardati la guida del metodo
	window.open("try2.htm", "", "") }
</script>
</head>
<body>
Valore da passare: <input type="text" id="val_da_mandare">
<input type="button" value="Apri e passa il valore!" onclick="apriFinestra()">

Valore ritornato: <input type="text" id="val_ritornato">
</body>
</html>
e file try2.htm

codice:
<html>
<head>
<title>Documento senza titolo</title>
<script language="javascript">
function tornaValore() {
/* funzione che ritorna il valore settando direttamente il value del campo nella finestra opener (cioè quella che ha aperto la finestra corrente */
	window.opener.document.getElementById("val_ritornato").value = document.getElementById("val_da_tornare").value
	window.close()
}

function caricaValore() {
/* funzione che carica il valore andando a leggere direttamente il value del campo nella finestra opener (cioè quella che ha aperto la finestra corrente */
	document.getElementById("val_caricato").value = window.opener.document.getElementById("val_da_mandare").value
}

window.onload = caricaValore // all'apertura carico il valore passato
</script>
</head>
<body>
Valore caricato: <input type="text" id="val_caricato">

Valore da ritornare: <input type="text" id="val_da_tornare"><input type="button" value="Torna il valore e chiudi!" onclick="tornaValore()">
</body>
</html>
altrimenti il valore puoi passarlo nella querystring, come ti viene più comodo... dipende un po' dai valori che devi passare e da quello che devi farci nella finestra aperta