Bootstrapでajaxメソッドを使うときに、Bootstrap公式で紹介されている組み込みコードをそのまま使うとエラーになってしまうので、その対応方法のメモです。

Uncaught TypeError: $.ajax is not a function

Bootstrapを組み込んだ上で、jQueryのajaxメソッドを使おうとすると、Uncaught TypeError: $.ajax is not a functionのエラーが出て正常動作しないことがあります。(Google Chromeのデバッガの例です)

原因

これはBootstrapのjQuery組み込みコードに原因があります。Bootstapの公式で紹介されている組み込みコードは、以下のようになっています。

1行目でjQueryの本体を組み込んでいますが、jquery-3.2.1.slim.min.jsはjQueryのスリムビルドと呼ばれるバージョンで、非推奨の機能やAjaxの機能が削除された軽量版になっています。スリムビルドはjQueryのバージョン3から提供され始めたものなので、知らない方も多いのではないでしょうか。
したがって、上記コードでjQueryを組み込むとjQueryのAjaxメソッドは使用できません。組み込むjQueryをjquery-3.2.1.min.jsとする必要があります。ハッシュも変わるため、以下のコードに変更するとAjaxが使えるようになります。