Uncaught TypeError: $.post is not a function

If you use jquery slim version then this problem will occur. use minified or uncompressed version of jquery js file


You are using the slim version of jQuery, which doesn't include the Ajax methods (in your case $.post()).

Use the non-slim build, available here http://jquery.com/download/, such as:

https://code.jquery.com/jquery-3.5.1.min.js


From jQuery 3.0 release post:

Slim build

[...] Sometimes you don’t need ajax, or you prefer to use one of the many standalone libraries that focus on ajax requests.[...] Along with the regular version of jQuery that includes the ajax and effects modules, we’re releasing a “slim” version [...], it excludes ajax, effects, and currently deprecated code.