Question

J'ai un problème avec un projet sur lequel je travaille en ce moment qui utilise le Validation pour jQuery, lorsque l'erreur de validation apparaît, je lui applique dynamiquement une balise d'ancrage avec un clic. Et sa cette onclick thats le problème ...

La première fois que l'erreur de validation apparaît, je dois cliquer deux fois sur le lien pour que l'événement onclick soit déclenché.

J'ai jeté un coup d'œil à la page via la barre d'outils de développeur IE et l'ancre encapsule correctement le message de validation. Onlick et tous les fichiers javascript nécessaires sont joints

Qu'est-ce qui se passe? Toutes les suggestions seraient grandement appréciées:)

EDIT: extraits de code ajoutés

jQuery(document).ready(function() {
        jQuery('#group-edit-form').validate({
            rules: {
                title: {
                    required: true,
                    remote: '<%=Url.Action("ValidateGroupName", new { id = ViewData["GroupId"] }) %>?parentId=' + getParentId()
                }
            },
            messages: {
                title: {
                    required: getMessage (7002),
                    remote: '<%= ((MessagingModel)ViewData["Messages"]).GetMessage (9001) %>'
                }
            }
        })

    });
    function getMessage(messageId) {
        var message = "<a id='errorMessageAnchor_" + messageId + "' onclick='messageBuilder(" + messageId + ")'><%= ((MessagingModel)ViewData["Messages"]).GetMessage (7002) %></a>";

        return message;
    }
Était-ce utile?

La solution

C'est l'événement de flou qui interfère avec le clic d'ancrage.

Vous pouvez choisir l'une de ces options:

  • Désactiver la validation sur l'événement de flou avec onfocusout: false
  • Désactiver la définition du focus sur un élément non valide avec focusInvalid: false
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top