2010-09-13 7 views
1

J'ai un menu déroulant. Quand je clique sur "Italien" dans la liste déroulante, je veux montrer le contenu pour l'italien. Fondamentalement, ce que je veux, c'est mettre l'action à l'informatique quand je sélectionne l'italien dans la liste déroulante. Comment pourrais-je l'approuver?OnClick() événement dans la liste déroulante

<% action = Request.QueryString("action") %> 

    <form name="contentchanger" action="/" method="post"> 
     <select name="flag" name="flag"> 
       <option value="Choose" selected="selected">Choose</option> 
       <option value="italian" onclick="what code i should use here?">Italian</option> 
     </select> 
    </form> 
    <a href="?action=FR">FR</a> 
    <a href="?action=IT">IT</a> 

    <% 
    if action = "IT" Then 
     Response.Write("<p>This is italian</p>") 
    else if action = "FR" Then 
     Response.Write("<p>This is French</p>") 
    end if 
    end if 
    %> 

Répondre

4

Il est préférable d'utiliser l'événement onchange dans la zone de sélection. Onclick ne fonctionne pas bien dans tous les navigateurs. Associez une fonction javascript à l'événement onchange qui modifie l'URL de l'élément (ou redirigez-la vers l'URL correcte si vous souhaitez la modifier instantanément).

Quelque chose comme ça devrait fonctionner. Je recomment en utilisant un libary javascript comme jquery si vous voulez faire les fonctionnalités côté client plus interactive

changeLanguage()

<select onchange="changeLanguage(this.value)"> 
    <option value="Choose" selected="selected">Choose</option> 
    <option value="IT" >Italian</option> 
    <option value="FR" >France</option> 
</select> 

<a id="url" href="?action=IT">IT</a> 

Javascript:

function changeLanguage(language) { 
    var element = document.getElementById("url"); 
    element.value = language; 
    element.innerHTML = language; 
} 

Mise à jour:

code

J'ai utilisé pour mon test. Cela fonctionne dans les versions les plus récentes de chrome, firefox et ie.

<html> 
<head> 
<script> 
    function changeLanguage(language) { 
    var element = document.getElementById("url"); 
    element.value = language; 
    element.innerHTML = language; 
    } 
</script> 
</head> 
<body> 
<select onchange="changeLanguage(this.value)"> 
    <option value="Choose" selected="selected">Choose</option> 
    <option value="IT" >Italian</option> 
    <option value="FR" >France</option> 
</select> 

<a id="url" href="?action=IT">IT</a> 
</body> 
</html> 
+0

Salut Marc, merci pour vos reply..I ont essayé le code et je reçois et erreur:/ –

+0

Quelle erreur avez-vous obtenu? –

+0

l'essayer sur IE et vous verrez l'erreur suivante: null est nul ou pas un objet –

Questions connexes