48 votes

Comment remplir le champ d'un formulaire, et le soumettre, en utilisant le javascript ?

Si j'ai un document html dont la structure approximative est

<html>
<head>
</head>
<body class="bodyclass" id="bodyid">
<div class="headerstuff">..stuff...</div>
<div class = "body">
<form action="http://example.com/login" id="login_form" method="post">
<div class="form_section">You can login here</div>
<div class="form_section">
<input xmlns="http://www.w3.org/1999/xhtml" class="text" id="username"
       name="session[username_or_email]" tabindex="1" type="text" value="" />
</div>
<div class="form_section">etc</div>
<div xmlns="http://www.w3.org/1999/xhtml" class="buttons">
    <button type="submit" class="" name="" id="go" tabindex="3">Go</button>
    <button type="submit" class="" name="cancel" 
            id="cancel" tabindex="4">Cancel</button>
</div>
</form>
</div>
</body>
</html>

Vous pouvez voir qu'il y a un champ pour le nom d'utilisateur et un bouton Go. Comment pourrais-je, en utilisant Javascript, remplir le nom d'utilisateur et appuyer sur Go... ?

Je préférerais utiliser un simple JS, plutôt qu'une bibliothèque comme jQuery.

74voto

Diodeus Points 67946
document.getElementById('username').value="moo"
document.forms[0].submit()

25voto

JohnO Points 620
document.getElementById('username').value = 'foo';
document.getElementById('login_form').submit();

4voto

Chandu Points 40028

Vous pouvez essayer quelque chose comme ça :

    <script type="text/javascript">
        function simulateLogin(userName)
        {
            var userNameField = document.getElementById("username");
            userNameField.value = userName;
            var goButton = document.getElementById("go");
            goButton.click();
        }

        simulateLogin("testUser");
</script>

3voto

xaoax Points 121

Ce serait quelque chose comme :

document.getElementById("username").value="Username";
document.forms[0].submit()

Ou similaire edit : vous êtes trop rapides ;)

1voto

Cette méthode m'a aidé à accomplir cette tâche

document.forms['YourFormNameHere'].elements['NameofFormField'].value = "YourValue"
document.forms['YourFormNameHere'].submit();

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X