web-dev-qa-db-fra.com

TypeError: $ (...). Typeahead n'est pas une fonction

C'est un code très basique. Je suis toujours confronté à un problème. Je pense que je manque quelque chose, comme mentionné sur bootstrap site

"Les plugins peuvent être inclus individuellement (bien que certains aient des dépendances requises), ou tous en même temps. Bootstrap.js et bootstrap.min.js contiennent tous les plugins dans un seul fichier."

J'ai donc inclus boostrap.js et j'obtiens toujours cette erreur, quelles sont les autres dépendances?

Voici le code.

<!DOCTYPE html>
<html>
    <head>
        <title>Member</title>
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <script type="text/javascript" src="js/jquery.js"></script>
        <script type="text/javascript" src="js/bootstrap.min.js"></script>
        <link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
    </head>
    <body>
<div class="well">  
<input type="text" class="span3" id="search" data-provide="typeahead" data-items="4" />  
</div>
<script>  
 var subjects = ['PHP', 'MySQL', 'SQL', 'PostgreSQL', 'HTML', 'CSS', 'HTML5', 'CSS3', 'JSON'];   
$('#search').typeahead({source: subjects})  
</script>
    </body>
</html>

Cordialement

Aadam

20
Aadam

si vous voyez le message d'erreur "TypeError: $ (…) .typeahead n'est pas une fonction" cela signifie que la fonction typeahead n'est pas fournie dans la version de bootstrap que vous utilisez. Officiellement, la frappe est supprimée de la nouvelle version 3.0 et est disponible séparément dans typeahead.js.

vous devez inclure le plugin typeahead.js que l'erreur supprimera.

20
Aamir Parre

J'ai rencontré une erreur du type " TypeError: $ (…) .typeahead n'est pas une fonction "

Ici, la fonction typeahead n'est pas fournie dans bootstrap dans la version actuelle que vous utilisez.

Maintenant, la tête de frappe est supprimée de la nouvelle version 3.0. et maintenant c'est disponible sur typeahead.js.

Vous devrez donc inclure le plugin typeahead.js dans votre fichier/projet, puis votre erreur sera supprimée, ainsi que votre référence à la fonction typeahead.

(Téléchargez la dernière version de bootstrap3-typeahead.js ou bootstrap3-typeahead.min.js. Incluez-la dans votre source après jQuery et JavaScript de Bootstrap.)

Lien Pour télécharger:

https://github.com/bassjobsen/Bootstrap-3-Typeahead/blob/master/bootstrap3-typeahead.js

See the snapshot for help

https://github.com/bassjobsen/Bootstrap-3-Typeahead/blob/master/bootstrap3-typeahead.min.js

See the snapshot to download the typehead.min.js

2
Shubham Verma
$('#search').typeahead({source: subjects}) 

devrait être

$('#search').typeahead({local: subjects}) 

Et comme typeahead n'est plus inclus dans le dernier standard Bootstrap package, vous devez le télécharger et le pointer explicitement. Le lien de téléchargement: typeahead.js

La dernière version est 2015 donc elle n'a pas été mise à jour depuis quelques années.

0
seceparsto