Ho un datagrid con un pulsante in ogni riga (accanto ad un TextBox) dal quale apro una nuova popup

<script>

function PopUpCerca()
{
window.open('SceltaPopUp.aspx','','toolbar=no,loca tion=no,
directories=no,status=no,menubar=no,scrollbars=yes ,resizable=no,
width=650,height=700')
}

</script>


che mi consente di scegliere un elemento e visualizzarlo all'interno del TextBox del datagrid

utilizzando:

<a href="#" onclick="opener.document.Form1.MatricolaNuovo.valu e = '<%#
DataBinder.Eval(Container.DataItem,"matricola")%>' ;
setTimeout('self.close()',200);">
seleziona</a>


nel datagrid:


<asp:TextBox id="Nuovo" runat="server" width="100px" />
<asp:Button id="Trova" runat="server" Text="Cerca"
CausesValidation="False"></asp:Button>


e nell'itemdataboud:

Button btn = (Button)e.Item.Cells[7].FindControl("Trova");

if (btn != null)

{

btn.Attributes["OnClick"] = "javascript:PopUpCerca()";

}

il mio problema è che, anche se viene aperta la popup, quando seleziono un elemento non mi viene copiato nel TextBox e non mi si chiude la popup.

Il codice della popup è corretto dato che utilizzo la stessa logica anche in un form (quindi non un datagrid) nel quale apro la popup utilizzando un pulsante accanto al TextBox

dove sbaglio?