Non somiglia nemmeno lontanamente a quello che ti ho suggerito...
Cos'e' che non ti piace nel mio script?
ciao
Edit: ho letto meglio la tua risposta... ma un submit ha ragione di esistere solo all'interno di un form... se ti occorre un pulsante devi usare un button o un input type=button:
codice:
<button onclick='if (confirm("Apertura")) {setTimeout("window.close()",300);window.open("index.asp?id=IlTuoId","_blank")}'>Vai</button>
oppure
<input type="button" onclick='if (confirm("Apertura")) {setTimeout("window.close()",300);window.open("index.asp?id=IlTuoId","_blank")}' value="Vai">
ciao