Javascript soumettre le formulaire: cet Objet ne gère pas cette propriété ou cette méthode (IE7)
Je suis en train d'essayer de soumettre un formulaire avec javascript. Firefox fonctionne très bien mais IE se plaint que "cet Objet ne gère pas cette propriété ou cette méthode" à la soumission de la ligne de cette fonction:
function submitPGV(formName, action)
{
var gvString = "";
pgVisibilities.each(function(pair) {
gvString += pair.key + ":" + pair.value + ",";
});
$('pgv_input').value = gvString;
var form = $(formName);
form.action = action;
form.submit();
}
Appelé ici:
<a href="javascript:submitPGV('ProductGroupVisibility','config/productgroupvis/save')">
Voici le formulaire:
<form id="ProductGroupVisibility" action="save" method="post">
<input type="hidden" name="ows_gv..PGV" id="pgv_input" value=""/>
</form>
Des idées?
OriginalL'auteur Kenny | 2008-11-05
Vous devez vous connecter pour publier un commentaire.
Essayer de vérifier le type de l'élément IE est la sélection:
Il est possible qu'il y est quelque chose d'autre sur la page avec cet ID IE sélectionne avant la forme.
Pas de problème. Fait moi-même plus d'une fois 😉
Veux juste ajouter quelque chose que je viens juste de voir qui fait la même chose. Différents cas, mais les mêmes symptômes. Pourrait aider quelqu'un qui trébuche sur cette réponse. "email = $('#UserEmail');" Pas de double identité, mais IE n'aime pas que l'email n'a pas été officiellement déclarée. Modification: "var email = $('#UserEmail');" Résout le problème. Ce qui est plus exact, et je suppose que c'est ce qui se passe quand vous êtes habitué à de la programmation en plus permissive environnements. 🙂
Cette astuce est d'une valeur inestimable. Correction d'un problème j'ai eu.
OriginalL'auteur Brian
Ce
name
votre<input type="submit">
?Si vous l'avez appelé "soumettre", vous avez remplacé le
form.submit()
de la fonction, de la même manière, une entrée qui s'appelle "toto" permettrait de générer unform.foo
de la propriété. Qui pourrait expliquer le comportement.De bonne grâce, j'ai juste trébuché sur exactement ce problème, Tomalak. Je vous dois une bière 😉
Même ici. C'est l'un des petits joyaux de la SORTE. 🙂
Wow, c'est deux bières déjà. 🙂
ajoutez juste un peu, de ne pas définir l'identifiant, qui fera de même dommage de réglage de la méthode de soumission de l'élément du dom.
OriginalL'auteur Tomalak
méfiez-vous de toutes les informations entrées dans le formulaire avec nom='submit', ils cassent le javascript .submit() fonctionnalité!
OriginalL'auteur Ben
Ce framework javascript utilisez-vous? Si c'est jQuery je pense que vous aurez besoin d'ajouter # pour votre id:
Yah, j'ai réalisé qu'après leur publication et édité ma réponse à spécifier jQuery. 🙂
Oh, c'est un Prototype. Désolé j'ai oublié de mentionner.
OriginalL'auteur Lance McNearney
Êtes-vous sûr que vous avez votre bibliothèque JavaScript chargé? (jQuery ou Prototype)
Il a travaillé pour moi dans IE7 avec Prototype.
Essayer:
Voir si vous obtenez un message d'erreur.
OriginalL'auteur Diodeus - James MacFarlane