jQuery autocomplete touche enter problème

J'ai une zone de texte pour la recherche à l'aide de jQuery autocomplete. Quand je tape quelque chose dans la zone de texte, c'est de montrer les suggestions dont aucune n'est sélectionnée.

J'ai trouvé que selectFirst: vrai n'est pas pris en charge maintenant. Si je sélectionne un élément dans la liste déroulante et appuyez sur entrée, il fonctionne très bien.

Le problème est que si l'utilisateur entre application pour apple et appuie sur la touche entrée, il tente de soumettre le formulaire avec application. Le formulaire ne doit être soumis à l'une des valeurs de la liste déroulante.

J'ai essayé de désactiver la soumettre le formulaire en appuyant sur entrer pour que je puisse envoyer le formulaire à partir de JavaScript, mais ne pouvait pas trouver une solution.

Voici mon code:

$("#searchtext").autocomplete({
    source: path + 'autocompletesearch?category=' + $("select[name='category'] option:selected").val(), 
    width: '500px', 
    matchContains: true, 
    select: function(event, ui){
        $(".searchform").attr("action", path + "fullproductinfo/" + ui.item.id);
        $("input[name='searchid']").val(ui.item.value);
        $(".searchform").submit();
    }
});

Et mon formulaire:

        <form method="post" action="search" class="searchform">
            <div class="searchdiv">
                <input type="text" id="searchtext" name="searchtext"
                    placeholder="Search a product or a brand" autocomplete="off"/>
            </div>
            <div class="searchbutton">
                <input type="button" name="btnsearchproduct" value="Search" />
            </div>
            <div class="clear"></div>
        </form>

Remarque qu'il y a <input type='button' et pas "soumettre", donc par défaut en appuyant sur enter ne devrait pas travailler pour la forme. C'est la saisie semi-automatique, je suppose que c'est de la soumission du formulaire sur "soumettre".

Ce serait bien si comme vous vous attendez à selectFirst option fonctionne, vous pouvez avoir la première option afin d'être ciblé par défaut?
Oui, ce serait mieux, mais selectFirst ne fonctionne pas

OriginalL'auteur Ashutosh | 2014-07-10