2009-06-18 9 views
3

Est-il possible de transmettre le contenu d'une zone de texte ou d'une zone de liste dans la partie URL du code javascript window.open(URL)? J'ai un contrôle de zone de liste asp.net qui affiche les valeurs d'URL. Lorsque jamais un utilisateur clique sur une autre zone de liste, la liste d'URL fournit l'URL spécifique. J'essaie de transmettre cette URL dans le code javascript ci-dessus, mais je ne connais pas la syntaxe correcte pour le faire. Ce code sera exécuté en tant qu'événement onclick.Passer le texte de la zone de liste à l'URL de la fenêtre contextuelle Javascript

Pour plus de précisions, semblable à taper “+ ListBox.Text.ToString() +” ou ‘” & List.Text & “’” pour ajouter le contenu d'une zone de liste en quelque chose d'autre, comme une zone de texte. Existe-t-il une syntaxe spécifique pour faire la même chose, mais ajouter le listbox.text en javascript?

Merci,

DFM

Répondre

3

ajouter simplement un gestionnaire onclick côté client à votre zone de liste comme indiqué ci-dessous:

<asp:ListBox id="ListBox1" runat="server" ..... 
      onclick="openPopup(this)"> 
     ........ 
</asp:ListBox> 

Ajoutez ensuite le code javascript suivant:

<script type="text/javascript"> 
    function openPopup(e){ 
     window.open(e.value); 
    } 
</script> 
+0

Merci - Cela fonctionne bien! –

0

Bien sûr, cela devrait être assez facile avec jQuery. Évidemment, la génération d'URL pourrait être réduite à une seule déclaration, mais devrait vous donner l'idée générale.

$(document).ready(function() { 
    $("your-element").click(function() { 
     var str = $("#listbox-id").val(); 
     var url = "your-url.com/" + str; 
     window.open(url); 
    }); 
}); 
+1

I love jQuery. C'est un gain de temps. Cependant, le PO n'en a fait aucune mention. –

+0

Merci - Je n'ai pas vraiment fait de recherche sur jQuery, donc je suis un peu hésitant à l'utiliser maintenant. Je voulais avoir une meilleure compréhension de Javascript, avant d'utiliser de nouvelles méthodes plus efficaces. Néanmoins, merci pour votre réponse. –

Questions connexes