2010-10-13 15 views
0

Je voudrais ajouter quelques variables quand ma fonction window.open se déclenche.Comment transmettre une variable en utilisant window.open()?

Exemple:

<a href="javascript:void(window.open('Details.aspx', 'Title'))"><%# Eval("Id").ToString) %></a> 

Je voudrais passer le numéro d'identification à la page Details.aspx. Comment je fais ça?

Répondre

4

passe sur la chaîne de requête:

<a href="javascript:void(window.open('Details.aspx?id=<%# Eval("Id").ToString) %>', 'Title'))"><%# Eval("Id").ToString) %></a> 

En Details.aspx vous pourrez l'obtenir:

var id = Request.QueryString["id"]; 
1

passer la valeur comme une chaîne de requête

<a href="javascript:void(window.open('Details.aspx?id=<%# Eval("Id").ToString) %>', 'Title'))"><%# Eval("Id").ToString) %></a> 
0

passe dans la chaîne de requête ou fragment, et l'analyser sur l'autre page.

0

Vous pouvez référencer des variables dans la page parent de la page enfant via window.opener. Votre page parent aurait scénario quelque chose comme ceci:

var detailsId = 0; 
function openDetails(id) 
{ 
    detailsId = id; 
    window.open('Details.aspx', 'Title'); 
} 

et HTML quelque chose comme ceci:

<a href="javascript:void(openDetails('<%# Eval("Id").ToString) %>'))"> 
    <%# Eval("Id").ToString) %></a> 

Et votre page enfant pourrait obtenir l'ID dans le script comme ceci:

var id = window.opener.detailsId; 

prendre plaisir!

Questions connexes