2010-12-10 5 views
1

Comme l'indique le titre, je voudrais court-circuiter l'onchange (à l'intérieur d'un select). J'ai le code suivant mais je voudrais juste envoyer une valeur codée en dur sans jamais montrer la boîte de sélection.court circuit onchange = "submit()"

<SELECT name="select_applet_instance" onchange="submit()"> 
    <% for (int i = 0 ; i <serviceBean.getinfo().size() ; i++){%> 
    <OPTION value="<%=i%>"><%= serviceBean.getinfo().get(i) %></OPTION> 
    <% }%> 
</SELECT> 

[modifier]
Désolé, je n'étais pas claire. Je ne veux même pas offrir une sélection, je sais quelle valeur je veux soumettre, je veux définir cette valeur et juste transmettre la page
[/ edit]

+0

vérifier définitivement cette [proposition] (http://area51.stackexchange.com/proposals/11464/code-review?referrer=aWNm_PdciyFqjFW8CUacGw2 "revue de code"). Il est presque là, a juste besoin d'un peu plus de soutien :) – greatwolf

Répondre

1

Si vous ne voulez pas montrer quoi que ce soit rediriger mais l'utilisateur immédiatement:

<input type="hidden" value="4" name="select_applet_instance" /> 
<script>yourformhere.submit()</script> 

Maintenant, le moment où le navigateur lit le tag <script>, il va soumettre le formulaire.

+0

Je veux remplacer tout dans le SELECT avec la redirection (la page a été utilisée pour deux choses, demander des données et obtenir des données, puis demander des données. cas (mon cas) la redirection désactive un ou deux champs - c'est mon cas d'utilisation - je connais la valeur à insérer pour OPTION, donc quand ils affichent cette page dans ce cas, il suffit de la transférer – KevinDTimm

+0

Quand j'envoie la valeur, j'ai aussi besoin de définir 'select_applet_instance' afin qu'il puisse être lu par la page de réception – KevinDTimm

+0

Cela semble presque le faire - mais l'erreur est de mon côté, pas votre réponse.Merci un million/accepté! – KevinDTimm

1

Vous devez soumettre l'élément de formulaire. Vous pouvez le faire en faisant référence à la forme et appelant soumettre à ce sujet:

<SELECT name="select_applet_instance" onchange="document.getElementById('yourFormsID').submit()"> 
    <% for (int i = 0 ; i <serviceBean.getinfo().size() ; i++){%> 
    <OPTION value="<%=i%>"><%= serviceBean.getinfo().get(i) %></OPTION> 
    <% }%> 
</SELECT> 
+0

Désolé, je n'étais pas clair, s'il vous plaît voir modifier – KevinDTimm

+0

Voulez-vous changer la valeur de ce select sur la soumission de formulaire? – wajiw

+0

non, c'est juste un droit vers l'avant - voir la réponse de Konerak ci-dessus – KevinDTimm

Questions connexes