Comment autopopulate un formulaire HTML et de le soumettre instantanément?
J'ai un formulaire HTML simple avec un nom d'utilisateur et mot de passe.
Ce formulaire HTML contient une connexion à la fois gratuits et payants utilisateurs. Payé les utilisateurs doivent entrer un nom d'utilisateur et le mot de passe, tandis que les utilisateurs doivent entrer les noms d'utilisateur par défaut par exemple, nom d'utilisateur = monnom, et le Mot de passe = mot de passe.
J'ai réussi à la remplit automatiquement les valeurs du formulaire à l'aide d'un lien HTML -
<a href="#" onclick="document.getElementById('name').value='myname';document.getElementById('password').value='mypassword';" >Free User</a>
Cela a fonctionné sans problème. Maintenant, je voudrais ajouter la possibilité que, lorsque le Libre Utilisateur clique sur le bouton, les valeurs sont automatiquement comme ci-dessus et le dit formulaire HTML est envoyé immédiatement.
Quand je l'ai essayé à l'aide de différentes méthodes, les champs de remplir, le formulaire HTML ne se soumettra pas.
Merci à vous.
- je ne pense pas que vous avez obtenu ce droit, si c'est la liberté de l'utilisateur, aucun journal n'en devrait pas être nécessaire, il suffit de le mettre sur le côté serveur
- Salut @Ibu, je sais qu'il ne peut faire sens pour vous, mais dans mon objectif de la conception du logiciel, chaque utilisateur doit disposer d'un nom d'utilisateur et mot de passe, même les utilisateurs de free. Ils sont donc par défaut nom d'utilisateur et mot de passe.
Vous devez vous connecter pour publier un commentaire.
Juste définir les valeurs par défaut dans la forme, pas de script requise:
Si vous avez vraiment vraiment devez utiliser un script, puis (à noter qu'un contrôle de formulaire avec le nom de "nom" masque la forme du nom de la propriété, de sorte que j'ai utilisé quelque chose de plus approprié) d'utiliser quelque chose comme:
Mais franchement c'est une perte de temps totale. Si vous placez deux boutons submit du formulaire, l'une pour les invités et une pour les utilisateurs enregistrés, ensuite vous pourrez cliquer sur l'invité bouton "soumettre".
Quel que soit le bouton est cliqué sera envoyé au serveur afin de pouvoir définir les autorisations appropriées. S'ils ont cliqué sur le bouton guest, vous n'avez pas de soins de la valeur qu'ils ont mis pour le nom d'utilisateur ou mot de passe, juste l'ignorer.
Encore une fois, zéro script requise.
Si je comprends votre question de droit, et que vous voulez un bouton pour remplir les champs du formulaire avant de poster le formulaire, il suffit de placer votre code embarqué dans une fonction javascript et le définir comme le gestionnaire de clic via le "onclick" propriété du bouton.
Ex:
Id question une conception qui signifie que vous devez renseigner les variables et de ne pas les avoir comme valeurs par défaut si! (Les valeurs par défaut peuvent être définies dans le code HTML) Toutefois, si les spécifications de conception alors voici votre code!
Modifier
Pour résumer tous les commentaires ci-dessous: ce code ne marchera pas si vous avez un élément dans votre formulaire avec le nom "soumettre" - ala soumettre la plupart des formulaires qui sont nommées soumettre! Si vous essayez d'appeler ce code à la soumission de la ligne sera effectivement essaie de l'appeler sur le bouton; ce qui n'est évidemment pas une fonction et vous obtiendrez cette erreur ici...
[jsFiddle avec l'erreur] [jsFiddle fixe] - Remarque seul le bouton soumettre nom a changé.
L'explication à cela est ici - eh bien, vous apprenez quelque chose de nouveau tous les jours!
De sorte que vous pouvez définir le nom de votre bouton pour quelque chose d'autre, c'est à dire sous; ou vous pouvez utiliser GitaarLAB de la solution de l'appel de l'événement click sur le bouton soumettre par programmation. (Voir la section des commentaires pour cette)
<form name="input" id="formID" action="html_form_action.asp" method="get">
méthode pourrait également être post.. avec les obtenir, vous pouvez voir les données (url-encodé) dans le addressbar, avec la poste, vous n'avez pas.<button onclick="populate(); document.getElementById('submit').click(); ">asdf</button>
fait. L'astuce consiste à ajouter un ID à votre bouton "soumettre", et puis déclencher cliquez sur l'événement au lieu de submit();document.forms["formID"].submit();
avecdocument.getElementById('submit').click();
et n'oubliez pas de définir l'id sur le bouton "soumettre"! Les centres d'intérêts.. il est une fraction de réponse de la fonction ici sur, DONC?Vous pouvez toujours les mettre serverside, c'est à dire si une connexion soumettre le formulaire est reçu sans nom d'utilisateur/mot de passe, puis de la remplacer par votre défaut user/pass et continuer votre login script.
Alternativement ou sur le dessus de cela, vous pouvez également définir 1 ou 2 champs cachés si vous souhaitez assigner différentes par défaut user/pass combinaisons dynamiquement.
Plus directement à votre question, vous avez déjà compris comment faire pour remplir un champ.. donc un deuxième champ est de répéter le même truc. Vous pouvez toujours utiliser la valeur par défaut de soumettre bouton de la forme, si vous le souhaitez, mais alors vous avez besoin de Javascript en cours d'exécution sur le client. La soumission du formulaire se fait traditionnellement par le document.les formes[n].submit();
Pourtant document.getElementById('submit').cliquez sur(); fonctionne tellement mieux..
Donc dans l'ensemble, pour un gracieux de secours, je vous conseille 2 forme cachée-champs et de prendre soin de tout le reste serverside.
Bonne chance
Mise à JOUR 3: Deux versions basées sur ma technique, fonctionne à la perfection!!!
Ouverture de session automatique:
Bouton (initié par l'utilisateur) d'ouverture de session automatique: