2010-11-01 14 views
0

Ceci est mon premier message sur ce forum. Alors, salut!Le formulaire ne fonctionne pas dans Safari et Chrome, mais fonctionne dans ie et firefox

J'ai un problème. J'ai créé un outil en ligne pour que les clients mystères encodent et valident les visites qu'ils ont faites partout en Europe. Jusqu'à présent, mes formulaires générés automatiquement basés sur les données PHP et MySQL fonctionne très bien. J'ai un problème récurrent. Les formes fonctionnent très bien dans ie (toutes les versions) et firefox, mais pas dans le chrome ou le safari.

J'ai utilisé la validation de jquery sur les formulaires, donc il y a peut-être un problème avec ça.

Le problème: Lorsque je travaille dans Safari, il ne se passe rien si je clique sur soumettre le formulaire? Lorsque je travaille dans Chrome, la validation de jquery fonctionne très bien, mais le formulaire n'est pas envoyé?!?

Mes tags sous forme de début et de fin:

<form action="encodage_finish.php" method="post" id="encodageForm"> 
<input name="submit" type="submit" value="<?php echo $translation["SubBodyFormButton"]; ?>" id="verzendknop" /></form> 

Mon code jquery:

$("#encodageForm").validate({ 

    submitHandler: function(form) { 
     $('div.error').toggle('normal'); 
     dateISO: true; 
     form.submit(); 
    } 
}); 

Répondre

1

Je ne sais pas ce que cela est:

dateISO: true; 

Il ressemble à une validation règle glissé là-bas sur un copier/coller, il suffit de supprimer cela car il est un script invalide:

$("#encodageForm").validate({ 
    submitHandler: function(form) { 
    $('div.error').toggle('normal'); 
    form.submit(); 
    } 
}); 

Actuellement à cause de cela dateISO: true; les navigateurs qui ne fonctionnent pas sont fait sauter lors de la lecture de cette ligne dans le gestionnaire présenter, selon la façon dont le navigateur fonctionne, certains faisant exploser lors du chargement de votre script d'abord, d'autres lors de l'exécution submitHandler pour la première fois.

+0

Salut Nick la dateISO est pour mon champ de date. DateISO est la notation européenne pour la date. Cette vérification de la valeur est au format européen. Est-ce que c'est au mauvais endroit? –

+0

Salut Nick, j'ai commenté cette ligne, il ne change rien avec mon formulaire, donc il continue à commenter. Mais soumettre des tests sans cette ligne de code, ne fonctionnent toujours pas dans Safari et Chrome. –

+0

@Jens - Cette ligne de code doit être dans 'rules', par exemple' $ ("# encodageForm"). Validate ({rules {dateInputNAME: {dateISO: true}}, submitHandler: .... ' –

Questions connexes